Java guru
934 subscribers
1 photo
1 video
234 links
Новости из мира Java, обзоры интересных библиотек и фреймворков, обучающие статьи. Онлайн обсуждения актуальных тем и обмен опытом. Для связи @RodmanDV
Download Telegram
Spring Boot Starter: практически, принципиально и подробнее. Часть 2

Это вторая статья из серии статей о том как создавать Spring Boot Starter. Ссылка на первую есть в начале статьи. Первую имеет смысл читать если вы не знакомы со стартерами.

Во второй на прикольных примерах разбираются возможные аннотации для конфигурирования. Стоит особо отметить примеры создания кастомных аннотаций.

https://habr.com/ru/companies/ru_mts/articles/825014/
Вышла Java 23

Вышла общедоступная версия Java 23. В этот релиз попало около 2400 закрытых задач и 12 JEP'ов. Release Notes можно посмотреть здесь. Полный список изменений API – здесь.
Java 23 не является LTS-релизом, и у неё будут выходить обновления только полгода (до марта 2025 года).

https://habr.com/ru/news/844060/
Опыт отладки хитрой утечки памяти

Окружение: потоковые конвейеры обработки данных, созданные с помощью Apache Flink.

Симптомы: Время от времени некоторые таски «валятся» из-за утечек памяти.

Статья интересна не только найденной причиной проблемы, но и описанием процесса поиска причины.


https://habr.com/ru/companies/wunderfund/articles/843618/
Как расширить JPA для работы с JSONB в PostgreSQL

Для работы с JSONB в PostgreSQL можно использовать и нативные SQL-запросы, но если в вашем проекте подключен Hibernate, то вы можете решить задачу более объектно ориентированно.

https://habr.com/ru/companies/itfb/articles/825406/
Умножение Монтгомери

Деление целых чисел — это долго и сложно. Вычислять остаток от деления — нисколько не проще. При этом в спортивном программировании, да и в прикладной математике типа криптографии, задача умножения чисел по модулю встречается повсеместно.

Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.

https://habr.com/ru/articles/827880/
Неожиданности в авторизации. Что скрывает Keycloak?

Даже в известном и популярном ПО бывают баги. Иногда не очень очевидные, а иногда и детские. В статье приведен разбор для довольно популярного продукта Keycloak.

https://habr.com/ru/companies/pvs-studio/articles/828406/
Сбер запустил второй сезон конкурса красоты кода 👑

Подайте заявку на конкурс «Красота кода» до 28 октября и напишите аккуратный и понятный код.

Во втором сезоне аудитория будет соревноваться в пяти категориях: Backend, Frontend, DevOps, AI и Mobile.

Участники могут выиграть iPhone 16, колонку SberBoom и получить приглашение на оффлайн конференцию HighLoad++.

Готовы побеждать? Скорее заполняйте заявку на сайте
Microservices Project using Spring Boot

В статье описан проект на базе Spring Boot 3, Spring Cloud и PostgreSQL. В рамках проекта вы изучите ключевые компоненты, такие как API Gateway, Config Server и Discovery Server, а также реализуете два реальных микросервиса.

https://www.javaguides.net/2023/04/microservices-using-spring-boot.html
Работа с геометрией в JPA и Spring Boot 3

Автору проекта из статьи нужно было работать с адресами клиентов и проверять входит ли адрес в зону доставки. Для работы с геометрией используется GeoJson. В качестве базы PostgreSQL. Приложение для работы с базой использует Spring Data JPA.

https://habr.com/ru/articles/831566/
Создание масштабируемых приложений при помощи Kafka и реактивного программирования

В статье описывается построение системы из нескольких микросеовисов на базе Spring Boot Webflux и Kafka. Даже взаимодействие по WebSocket добавили. Если вы не работали с этими технологиями, то там вначале дается краткая справка. Из странностей: описывается старт Kafka не в podman/docker, а «по старинке».

В целом статья хорошая и «без лишней воды».

https://habr.com/ru/companies/piter/articles/831772/
Генерация HTTP клиентов для Spring Boot приложения по OpenAPI спецификации

В статье написано о том как можно сгенерировать код HTTP клиентов для Spring Boot приложения по OpenAPI спецификации, используя плагин openapi-generator для Gradle.

https://maciejwalkowiak.com/blog/spring-boot-openapi-generate-client/
Кэш второго уровня Hibernate для чайников

В Hibernate есть возможность гибкой настройки L2 кэша. Можно подключать различные провайдеры с реализацией кеша. В статье приводится пример настройки для ehcache.

https://habr.com/ru/articles/833478/
Using Dev Containers in JetBrains IDEs

Очень крутая фича от JetBrains!

На сколько быстро новые сотрудники в ваших команд настраивают окружение и сборку проекта?
Были ли у вас кейсы когда у одного разработчика все собирается, а у другого нет из-за «хитрых» настроек окружения?
Теперь эти «ужасы» возможно уйдут в прошлое, конечно при условии, что эту фичу в JetBrains нормально допилят ;-)

В докер можно будет поместить «все что нужно для разработки».

https://blog.jetbrains.com/idea/2024/07/using-dev-containers-in-jetbrains-ides-part-1/
Паттерн Transactional Outbox и его реализация с использованием Spring Boot

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

https://www.wimdeblauwe.com/blog/2024/06/25/transactional-outbox-pattern-with-spring-boot/
Как сделать анализатор кода за два дня

Автор в статье рассказывает как разрабатывали анализатор кода Lua в рамках хакатона. Сам анализатор писали на Java с использованием ANTLR v4. Lua был выбран потому, что его синтаксис довольно прост.

https://habr.com/ru/companies/pvs-studio/articles/835936/
Материалы по System Design

На собеседованиях в крупные компании есть этап System Design. Этот этап показывает ваш кругозор и умение проектировать. Даже если вы не собираетесь в ближайшее время на собеседования я все равно рекомендую ознакомиться. Навык точно оценивать, задавать правильные вопросы и находить шедевральные решения может пригодиться и натекущем месте работы.

https://github.com/javabuddy/best-system-design-resources?tab=readme-ov-file
JPA Entity. Загрузи меня не полностью

JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей. В статье рассмотрены имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобраны их особенности и corner-кейсы.

https://habr.com/ru/companies/spring_aio/articles/833918/
Forwarded from Sasha Kruasanova PROIT
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 🚩 🚩 Красные флаги для разработчиков!

Мы тут с ребятами, из разных областей разработки, накидали «красных флагов»
от продуктов, тех и тим лидов.

А вас от каких фраз бомбит?

https://tttttt.me/kruasanova_as

#хаха
#красныефлаги
#разработка
Я недавно «засветился» в ролике одного очень крутого блогера - Саши Круасановой )))

Она Королева горячих инсайдов и актуальных кейсов, devrel-фея, экспертно решающая проблемы и споры на всех уровнях.

У нее прикольный контент. Если нравится, то подписывайтесь )))

https://tttttt.me/kruasanova_as