home.social

#springboot — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #springboot, aggregated by home.social.

  1. 🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨

    📍 Location: Hyderabad
    👨‍💻 Experience: 12–14 Years
    💼 Employment Type: Permanent
    💰 CTC: Up to 40 LPA

    📩 Apply here: - zurl.co/8FVNz

    #Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring

  2. 🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨

    📍 Location: Hyderabad
    👨‍💻 Experience: 12–14 Years
    💼 Employment Type: Permanent
    💰 CTC: Up to 40 LPA

    📩 Apply here: - zurl.co/8FVNz

    #Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring

  3. 🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨

    📍 Location: Hyderabad
    👨‍💻 Experience: 12–14 Years
    💼 Employment Type: Permanent
    💰 CTC: Up to 40 LPA

    📩 Apply here: - zurl.co/8FVNz

    #Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring

  4. 🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨

    📍 Location: Hyderabad
    👨‍💻 Experience: 12–14 Years
    💼 Employment Type: Permanent
    💰 CTC: Up to 40 LPA

    📩 Apply here: - zurl.co/8FVNz

    #Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring

  5. 🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨

    📍 Location: Hyderabad
    👨‍💻 Experience: 12–14 Years
    💼 Employment Type: Permanent
    💰 CTC: Up to 40 LPA

    📩 Apply here: - zurl.co/8FVNz

    #Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring

  6. I just sponsored Namastack for the Outbox Pattern. Join me and sponsor your open source dependencies!

    #Java #SpringBoot #Sponsor

    github.com/sponsors/namastack?

  7. Finally live! Our training playlists are now public—covering #SpringBoot #Quarkus #Helidon #Payara #EclipseStore #Microstream

    👉 Learn fundamentals that power modern Java
    👉 Understand today’s frameworks
    👉 Level up your backend skills

    Get the free link: javapro.io/2026/04/01/new-java

  8. So, #Intellij just autocreated an empty method for
    ticketReissueRepository.findByTicketPurchase_Order_IdOrderByReissueDateDesc(int) via guided autocomplete in this (not quite #SpringBoot) system and... I'm a little conflicted

    Obviously it Just Worked (and if it hadn't it would have failed immediately at runtime rather than lurking until called), and writing JPA was never something that got me up in the mornings, but... If this is The Pattern, there is a lot of code to refactor

    #java musings

  9. [Перевод] Команда Spring о Spring Framework 7 и Spring Boot 4

    В новом переводе от команды Spring АйО рассмотрим выход Spring Boot 4 и Spring Framework 7. InfoQ взяли интервью у core команды Spring с целью узнать, куда движется самая популярная в Java экосистема. Spring Boot 4 модуляризировал автоконфигурацию. Теперь при запуске проверяется меньше классов в classpath, а uber-jar будет более компактным: будут подключаться только нужные модули. Параллельно Spring Boot 4 переходит на Jackson 3, но добавлен модуль совместимости с Jackson 2, потому что экосистема ещё догоняет. Spring Framework 7 тащит core resilience в ядро: RetryTemplate , @Retryable и @ConcurrencyLimit доступны без отдельной зависимости. @Retryable работает и с реактивными типами (через Retry из Project Reactor); для обычных вызовов используется RetryTemplate с политикой retry/backoff. @ConcurrencyLimit помогает ограничивать доступ к ресурсу, что особенно полезно с Virtual Threads.

    habr.com/ru/companies/spring_a

    #java #kotlin #spring #spring_boot #spring_framework #springboot #spring_data #ai #agents

  10. The biggest blocker for #Java developers in #Web3 isn’t #Blockchain — it’s the developer experience. #BloxBean brings Java-native tooling for wallets, transactions, local chains & #SpringBoot on #Cardano.

    @satran004 explains the full stack: javapro.io/2026/05/08/java-dev

    @Cardano_CF

  11. Your tests can be green & your database can still be dying. @AdsChosen explains how to test query efficiency (N+1, joins, time thresholds) as part of your test suite.

    Practical setup included: javapro.io/2026/01/29/houston-
    #Java #JPA #Hibernate #Database #SQL #TestingTools #SpringBoot

  12. Java Digest #35

    Всем привет! 👋👋👋👋👋 Мы — Java-разработчики Т-Банка: Андрей , Арсений , Роман , Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом. В этом выпуске рассказываем, когда ждать релиз Java 27 и как Oracle планирует регулировать использование генеративного ИИ при написании кода. Посмотрим детальное интервью о Spring Framework 7 и Spring Boot 4 с самой командой создателей Spring. Почитаем, как безопасно работать с нативной памятью в многопоточной среде с помощью VarHandle. А еще изучим любопытный постмортем, посвященный расследованию раздувания памяти в контейнерах после перехода на JDK 17. Приятного чтения! Читать 35 выпуск

    habr.com/ru/companies/tbank/ar

    #java #jdk #jep #spring #springboot #hibernate

  13. You asked for it—it’s finally here! A full collection of #Java training videos: #SpringBoot #Quarkus #Helidon #Payara #EclipseStore #Microstream & ...
    ✔️ Build real understanding
    ✔️ Learn core concepts that still apply
    ✔️ Go beyond quick tutorials
    Watch: youtube.com

  14. Higher-Kinded-J 0.4.2 ships EffectBoundary: write your Spring business logic once, interpret it three ways.

    🏭 Production: boundary.runIO(program) → real IO, actuator metrics, HTTP response
    🧪 Tests: TestBoundary.of(stub).run(program) → Id monad, no Spring, ms-fast, no mocks
    📋 Audit: swap in a WriterT interpreter for structured logging

    Same OrderService. Same program. Different interpreter at the edge.

    👉 higher-kinded-j.github.io/late

    #Java #SpringBoot #Spring #FP

  15. Как я стал вайбкодером (а казался, наверное, приличным человеком)

    Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.

    habr.com/ru/articles/1025262/

    #вайбкодинг #springboot #vaadin #jmix #bpm

  16. Как я стал вайбкодером (а казался, наверное, приличным человеком)

    Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.

    habr.com/ru/articles/1025262/

    #вайбкодинг #springboot #vaadin #jmix #bpm

  17. Как я стал вайбкодером (а казался, наверное, приличным человеком)

    Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.

    habr.com/ru/articles/1025262/

    #вайбкодинг #springboot #vaadin #jmix #bpm

  18. Как я стал вайбкодером (а казался, наверное, приличным человеком)

    Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.

    habr.com/ru/articles/1025262/

    #вайбкодинг #springboot #vaadin #jmix #bpm

  19. WebFlux vs Virtual Threads: что происходит при 2000 RPS

    Всем привет! Меня зовут Александр, и сегодня я расскажу о результатах перевода учебного проекта со Spring WebFlux и Netty на Spring MVC и Tomcat с виртуальными потоками и проверки обоих вариантов под нагрузкой в 2000rps. В качестве подопытного будет выступать система микросервисов, разработанная в рамках курса CloudJava .

    habr.com/ru/articles/1024936/

    #Java #virtual_threads #webflux #springboot #netty #tomcat

  20. [Перевод] Самый простой способ устроить утечку памяти в Java

    В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.

    habr.com/ru/companies/spring_a

    #java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot

  21. [Перевод] Самый простой способ устроить утечку памяти в Java

    В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.

    habr.com/ru/companies/spring_a

    #java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot

  22. [Перевод] Самый простой способ устроить утечку памяти в Java

    В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.

    habr.com/ru/companies/spring_a

    #java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot

  23. [Перевод] Самый простой способ устроить утечку памяти в Java

    В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.

    habr.com/ru/companies/spring_a

    #java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot

  24. Создал с нуля библиотеку для JasperReports, которая делает работу с ним легкой

    Работать с JasperReports тяжело — данные передаются хрупкими механизмами, бизнес-логика утекает в XML, а субрепорты требуют ручной синхронизации между Java и JRXML. jasper-modular-library решает это: отчёт описывается деревом POJO с аннотациями, процессор генерирует JRXML при компиляции, а рантайм собирает всё автоматически. В статье — типичные подходы к передаче данных и их проблемы, и как библиотека их устраняет.

    habr.com/ru/articles/1018888/

    #jasper #jasperreports #reports #reporting #java #springboot #library #opensource #pdf

  25. [Перевод] HotSpot AOT-кэш: стартуем быстрее, греемся меньше

    В новом переводе от команды Spring АйО рассмотрим, как можно ускорить Java-приложения без переписываний: в свежих JDK появились Ahead-of-Time оптимизации кэша, которые выносят «дорогие» этапы загрузки/линковки классов (и даже частично профилирование методов) из рантайма в заранее подготовленный артефакт. Рассмотрим как устроен AOT-кэш в JDK 24–26, какие есть workflow (3 шага vs 2 шага/в один прогон), где прячутся подводные камни вроде удвоения требований по памяти при - XX:AOTCacheOutput , и какие практики обучения помогут реально сократить время старта и быстрее выйти на пик производительности.

    habr.com/ru/companies/spring_a

    #java #kotlin #jvm #aot #cache #cachecontrol #spring #spring_boot #spring_framework #springboot

  26. История одного безальтернативного переезда

    Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.

    habr.com/ru/companies/reksoft/

    #springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide

  27. История одного безальтернативного переезда

    Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.

    habr.com/ru/companies/reksoft/

    #springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide

  28. История одного безальтернативного переезда

    Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.

    habr.com/ru/companies/reksoft/

    #springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide

  29. История одного безальтернативного переезда

    Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.

    habr.com/ru/companies/reksoft/

    #springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide

  30. Your tests can be green & your database can still be dying. @AdsChosen explains how to test query efficiency (N+1, joins, time thresholds) as part of your test suite.

    Practical setup included: javapro.io/2026/01/29/houston-
    #Java #JPA #Hibernate #Database #SQL #TestingTools #SpringBoot

  31. [Перевод] Паттерны проектирования в Data Engineering, которые необходимо освоить в 2026 году

    Настоящая устойчивость систем — в архитектуре. В новом переводе от команды Spring АйО — 8 фундаментальных паттернов проектирования, на которых держатся все современные data engineering-стеки. Освоив их, вы перестанете тушить пожары и начнёте проектировать платформы, которые выдерживают продакшен.

    habr.com/ru/companies/spring_a

    #java #kotlin #system_design #patterns #spring #spring_boot #spring_framework #springboot #spring_data

  32. [Перевод] Почему Kotlin ломает JPA

    Используешь Kotlin с Jakarta Persistence и думаешь, что всё работает? Возможно, до первой неожиданной ошибки. data class, val, final-классы и даже значения по умолчанию — всё это может тайно мешать корректной работе JPA. Вместе с Торбеном Янссеном в новом переводе от команды Spring АйО разберем скрытые ловушки и показывают, как настроить проект правильно, чтобы не наступить на мину.

    habr.com/ru/companies/spring_a

    #java #kotlin #jpa #jvm #spring #spring_boot #spring_framework #springboot

  33. Spring Boot — жажда скорости. CDS и разгон на старте

    Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.

    habr.com/ru/companies/haulmont

    #spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode

  34. Spring Boot — жажда скорости. CDS и разгон на старте

    Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.

    habr.com/ru/companies/haulmont

    #spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode

  35. Spring Boot — жажда скорости. CDS и разгон на старте

    Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.

    habr.com/ru/companies/haulmont

    #spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode

  36. Spring Boot — жажда скорости. CDS и разгон на старте

    Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.

    habr.com/ru/companies/haulmont

    #spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode

  37. Java Digest #31

    Всем привет! 👋👋👋👋👋 Мы — Java-разработчики Т-Банка: Андрей , Арсений , Роман , Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся со всем сообществом. Этот месяц в мире Java выдался насыщенным. В JDK 26 готовят превью Lazy Constants и Structured Concurrency, собираются убрать режим строк только UTF‑16, а стандартный HttpClient получает более гибкую поддержку TLS. Главное событие — GA‑релизы Spring Framework 7 и Spring Boot 4: модульная автоконфигурация, новый HTTP‑клиент, версионирование REST API, переход на Jackson 3 и множество других улучшений. Из практики: разбор пагинации в Spring Data JPA, подводные камни MapStruct и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск

    habr.com/ru/companies/tbank/ar

    #java #jdk #kotlin #spring #springboot #kora

  38. Java Digest #31

    Всем привет! 👋👋👋👋👋 Мы — Java-разработчики Т-Банка: Андрей , Арсений , Роман , Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся со всем сообществом. Этот месяц в мире Java выдался насыщенным. В JDK 26 готовят превью Lazy Constants и Structured Concurrency, собираются убрать режим строк только UTF‑16, а стандартный HttpClient получает более гибкую поддержку TLS. Главное событие — GA‑релизы Spring Framework 7 и Spring Boot 4: модульная автоконфигурация, новый HTTP‑клиент, версионирование REST API, переход на Jackson 3 и множество других улучшений. Из практики: разбор пагинации в Spring Data JPA, подводные камни MapStruct и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск

    habr.com/ru/companies/tbank/ar

    #java #jdk #kotlin #spring #springboot #kora

  39. Java Digest #31

    Всем привет! 👋👋👋👋👋 Мы — Java-разработчики Т-Банка: Андрей , Арсений , Роман , Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся со всем сообществом. Этот месяц в мире Java выдался насыщенным. В JDK 26 готовят превью Lazy Constants и Structured Concurrency, собираются убрать режим строк только UTF‑16, а стандартный HttpClient получает более гибкую поддержку TLS. Главное событие — GA‑релизы Spring Framework 7 и Spring Boot 4: модульная автоконфигурация, новый HTTP‑клиент, версионирование REST API, переход на Jackson 3 и множество других улучшений. Из практики: разбор пагинации в Spring Data JPA, подводные камни MapStruct и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск

    habr.com/ru/companies/tbank/ar

    #java #jdk #kotlin #spring #springboot #kora

  40. Почему Я выбираю Spring Data JDBC

    Реляционные базы данных по-прежнему остаются главным хранилищем наших данных. А значит, вопрос выбора инструмента отображения данных из БД на уровне приложения - всё так же актуален. Долгое время я выбирал: Spring Data JPA. Уверен, что большинства из вас — тоже. Но времена меняются, и в 2025 для своих новых проектов я использую — Spring Data JDBC. Почему? Если вам стало любопытно — добро пожаловать под кат.

    habr.com/ru/companies/haulmont

    #jpa #springdata #jdbc #hibernate #java #spring #orm #springboot

  41. Spring-boot-starter для паттерна Transaction outbox Kafka

    В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.

    habr.com/ru/articles/966802/

    #kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa

  42. Spring-boot-starter для паттерна Transaction outbox Kafka

    В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.

    habr.com/ru/articles/966802/

    #kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa

  43. Spring-boot-starter для паттерна Transaction outbox Kafka

    В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.

    habr.com/ru/articles/966802/

    #kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa