Библиотека Java разработчика
10.8K subscribers
1.14K photos
564 videos
58 files
1.44K links
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate.


По всем вопросам @evgenycarter

РКН clck.ru/3KoGeP
Download Telegram
Сравнение через equals() и ==

▪️ "==" используется для сравнения примитивных типов данных (например, int, char, boolean), проверяя, равны ли их значения. Однако, когда речь идет об объектах, "==" сравнивает их ссылки, то есть проверяет, указывают ли обе переменные на один и тот же объект в памяти.

▪️ Метод equals(), в свою очередь, предназначен для сравнения содержимого объектов. Это значит, что equals() проверяет, эквивалентны ли сами данные, хранящиеся в двух объектах, а не то, ссылаются ли они на одно и то же место в памяти.

Используйте == для сравнения примитивов и ссылок на объекты, когда вам важно знать, являются ли они одной и той же сущностью. Для сравнения содержимого объектов всегда применяйте equals().

👉@BookJava
👍31
👩‍💻 Разработка на Java требует глубокого понимания не только языка, но и принципов работы JVM, многопоточности и современных фреймворков.

🎯 Курс «Java Developer. Professional» — это структурированное обучение для разработчиков, которые хотят выйти на новый уровень, освоить актуальный стек технологий и уверенно претендовать на позиции уровня Middle+.

Вы получите 96 часов практической работы, на живых вебинарах разберете ключевые аспекты работы JVM, научитесь строить эффективные многопоточные приложения, освоите Spring WebFlux, Kafka, реактивный Postgres и Kubernetes.

📚Программа OTUS постоянно обновляется, соответствуя требованиям рынка, а диплом ценится работодателями.

🎁 Дарим промокод, который дает скидку на обучение - JAVA_09

➡️ Пройдите вступительное тестирование и присоединяйтесь к группе: https://vk.cc/cOY43c

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
💩21
Spring Boot 4 и Spring Framework 7: Ключевые фичи и изменения

Уже в ноябре 2025 выходит Spring Boot 4 — масштабный релиз, построенный на фундаменте Spring Framework 7.0.0 и Jakarta EE 11. Это не просто очередное обновление, а важный этап в развитии всей Java-платформы: новые возможности для REST и безопасности, улучшенная работа с Kotlin и GraalVM, мощная поддержка облаков и нативных образов, а также инструменты для создания отказоустойчивых приложений.

https://loiane.com/2025/08/spring-boot-4-spring-framework-7-key-features/

👉@BookJava
👍41
Media is too big
VIEW IN TELEGRAM
«За пределами REST: использование full-stack сигналов для реактивных интерфейсов в реальном времени» — Лейф Острэнд @ Spring I/O 2025

Современному веб-приложению нужно больше, чем просто запрашивать JSON с сервера и отправлять обратно значения форм в виде JSON. Пользователи ожидают не просто ещё один CRUD-интерфейс на REST. Они ждут обновлений в реальном времени, офлайн-синхронизации и бесшовного опыта на разных устройствах. Достичь этого, опираясь только на низкоуровневые соглашения вроде REST и WebSockets, требует огромных усилий.

Многие UI-фреймворки внедрили концепцию «сигналов», чтобы упростить обновление разных частей интерфейса при изменении состояния. Тот же подход можно применить и через сеть как full-stack-решение — для простого обновления интерфейсов сразу у нескольких пользователей, работающих с общим состоянием.

В этом практическом докладе будет показано, как использовать концепцию full-stack-сигналов для простой синхронизации данных приложения между пользователями на всём уровне стека — от UI до базы данных. Вы узнаете, как создавать приложения, которые по-настоящему радуют ваших пользователей.

источник

👉@BookJava
👍2
Если вы пишете бэкенд на Java и хотите работать на уровне серьёзных проектов, тестирование в Spring — навык, без которого сейчас никуда.

На открытом уроке «Тестирование Spring-приложений. Интеграционные тесты с контекстом» вы разберётесь, как правильно тестировать репозитории (JDBC и JPA) и сервисы с учётом транзакций. Это ключ к тому, чтобы ваш код был не только рабочим, но и надёжным в реальных продакшн-системах.

Вы получите пошаговый разбор особенностей интеграционного тестирования и научитесь писать простые тесты для репозиториев и сервисов. Эти знания напрямую повысят вашу ценность на рынке как Java-разработчика.

Урок проходит в преддверие старта курса «Разработчик на Spring Framework», все участники получат скидку на обучение: https://vk.cc/cP0uOe

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Совет по Spring Boot💡

Spring Boot Custom Bean Validations с Jakarta Constraint Validator, группировка ограничений проверки, последовательность групп и i18n

https://gist.github.com/aoudiamoncef/9eeece142d1ef0faa4d06216a41282a2

👉@BookJava
13👍3
Шпаргалка по Java Streams API

👉@BookJava
👍72
Java

Кеширование данных в Spring Boot
Полезные советы по работе с BigDecimal в Java
Алгоритмы: бинарный поиск на отсортированном массиве (реализация на Java)
Алгоритмы: поиск простых чисел с помощью "решета Эратосфена"
Алгоритмы: проверка слов и предложений на палиндром
Алгоритм определения анаграмм
Алгоритм инвертирования массива на Java
Разбор и вычисление арифметических выражений на Java

источник

👉@BookJava
👍2
👩‍💻 Открытый урок «Создание потоковых приложений с использованием Kafka Streams».

На вебинаре разберем как с помощью Kafka Streams создавать потоковые приложения, что важно для работы с большими данными и потоками в реальном времени.

🗓 10 сентября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Professional».

🎯 О чём поговорим:

✔️ Обсудим, что такое потоковые приложения и как их можно интегрировать с Kafka.
✔️ Изучим работу с библиотекой Kafka Streams и освоим основы DSL.
✔️ Разберемся в работе с состоянием потоков и его применении на практике.

👥 Кому будет интересно:
Этот вебинар будет полезен Java-разработчикам и архитекторам, которые хотят внедрять потоковые вычисления и анализ в свои приложения. Вы получите все необходимые знания, чтобы начать использовать Kafka Streams для создания высокоэффективных потоковых решений.

🎁 Дарим промокод, который дает скидку на обучение - JAVA_09

🔗 Ссылка на регистрацию: https://vk.cc/cPbeDj

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Совет по Java Time

Обратите внимание на equals() и isEqual() в классах работы с датой и временем! ZonedDateTime, OffsetDateTime и OffsetTime ведут себя по-разному:

- equals(): Сравнивает все поля (включая зону/смещение)
- isEqual(): Сравнивает только момент времени (игнорируя зону/смещение)

Один и тот же момент времени может дать разные результаты.

👉@BookJava
👍4