#springboot — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #springboot, aggregated by home.social.
-
🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨
📍 Location: Hyderabad
👨💻 Experience: 12–14 Years
💼 Employment Type: Permanent
💰 CTC: Up to 40 LPA📩 Apply here: - https://zurl.co/8FVNz
#Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring
-
🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨
📍 Location: Hyderabad
👨💻 Experience: 12–14 Years
💼 Employment Type: Permanent
💰 CTC: Up to 40 LPA📩 Apply here: - https://zurl.co/8FVNz
#Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring
-
🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨
📍 Location: Hyderabad
👨💻 Experience: 12–14 Years
💼 Employment Type: Permanent
💰 CTC: Up to 40 LPA📩 Apply here: - https://zurl.co/8FVNz
#Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring
-
🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨
📍 Location: Hyderabad
👨💻 Experience: 12–14 Years
💼 Employment Type: Permanent
💰 CTC: Up to 40 LPA📩 Apply here: - https://zurl.co/8FVNz
#Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring
-
🚨 Hiring Alert | Senior Technical Architect – AI & Digital Engineering 🚨
📍 Location: Hyderabad
👨💻 Experience: 12–14 Years
💼 Employment Type: Permanent
💰 CTC: Up to 40 LPA📩 Apply here: - https://zurl.co/8FVNz
#Hiring #TechnicalArchitect #AI #GenAI #CloudArchitecture #Java #SpringBoot #Kafka #AWS #Azure #GCP #HyderabadJobs #TechHiring
-
I just sponsored Namastack for the Outbox Pattern. Join me and sponsor your open source dependencies!
-
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 skillsGet the free link: https://javapro.io/2026/04/01/new-java-training-playlists-now-available-from-fundamentals-to-modern-frameworks/
-
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 conflictedObviously 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
-
[Перевод] Команда 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.
https://habr.com/ru/companies/spring_aio/articles/1034282/
#java #kotlin #spring #spring_boot #spring_framework #springboot #spring_data #ai #agents
-
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: https://javapro.io/2026/05/08/java-developers-youre-already-ready-for-blockchain-you-just-dont-know-it-yet/
@Cardano_CF
-
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: https://javapro.io/2026/01/29/houston-we-have-problems-with-the-queries/
#Java #JPA #Hibernate #Database #SQL #TestingTools #SpringBoot -
Java Digest #35
Всем привет! 👋👋👋👋👋 Мы — Java-разработчики Т-Банка: Андрей , Арсений , Роман , Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом. В этом выпуске рассказываем, когда ждать релиз Java 27 и как Oracle планирует регулировать использование генеративного ИИ при написании кода. Посмотрим детальное интервью о Spring Framework 7 и Spring Boot 4 с самой командой создателей Spring. Почитаем, как безопасно работать с нативной памятью в многопоточной среде с помощью VarHandle. А еще изучим любопытный постмортем, посвященный расследованию раздувания памяти в контейнерах после перехода на JDK 17. Приятного чтения! Читать 35 выпуск
-
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: https://www.youtube.com -
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 loggingSame OrderService. Same program. Different interpreter at the edge.
👉 https://higher-kinded-j.github.io/latest/spring/effect_boundary_integration.html
-
Как я стал вайбкодером (а казался, наверное, приличным человеком)
Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.
-
Как я стал вайбкодером (а казался, наверное, приличным человеком)
Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.
-
Как я стал вайбкодером (а казался, наверное, приличным человеком)
Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.
-
Как я стал вайбкодером (а казался, наверное, приличным человеком)
Не думал, что мне придется это сказать: я — вайбкодер. Все надеялся, как-нибудь обойдется, я же, в конце концов, умею и нормальной IDE пользоваться, и руками код пишу. Не бог весть какие сложные вещи, однако же и не совсем ерунду. Все-таки Java, Spring Boot, Vaadin, Flowable, Camunda, Jmix, RabbitMQ — вполне себе энтерпрайзно. И поначалу казалось, что все эти ИИ-шечки об такой стек зубы пообломают. Потому что эти фреймворки не настолько популярны, чтоб им было на чем учиться, что документация далеко не полна и некоторые вещи приходилось просто спрашивать конкретного человека, потому что иначе никак.
-
WebFlux vs Virtual Threads: что происходит при 2000 RPS
Всем привет! Меня зовут Александр, и сегодня я расскажу о результатах перевода учебного проекта со Spring WebFlux и Netty на Spring MVC и Tomcat с виртуальными потоками и проверки обоих вариантов под нагрузкой в 2000rps. В качестве подопытного будет выступать система микросервисов, разработанная в рамках курса CloudJava .
-
[Перевод] Самый простой способ устроить утечку памяти в Java
В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.
https://habr.com/ru/companies/spring_aio/articles/1022018/
#java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot
-
[Перевод] Самый простой способ устроить утечку памяти в Java
В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.
https://habr.com/ru/companies/spring_aio/articles/1022018/
#java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot
-
[Перевод] Самый простой способ устроить утечку памяти в Java
В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.
https://habr.com/ru/companies/spring_aio/articles/1022018/
#java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot
-
[Перевод] Самый простой способ устроить утечку памяти в Java
В новом переводе от команды Spring АйО рассмотрим утечки памяти в Java. Не секрет, что GC освобождает только недостижимые объекты. Утечка в Java начинается там, где объект уже не нужен, но на него все еще есть цепочка ссылок от живого потока. Симптомы обычно одинаковые: куча растет, GC срабатывает чаще, паузы увеличиваются, финал - java.lang.OutOfMemoryError: Java heap space . В целом вывод такой, что нужно смотреть график heap в VisualVM/JVisualVM/JConsole, снимать heap dump (jmap), в Eclipse MAT запускать Leak Suspects и проверять цепочки удерживающих ссылок.
https://habr.com/ru/companies/spring_aio/articles/1022018/
#java #kotlin #performance #spring #jdk #gc #spring_boot #spring_framework #springboot
-
Создал с нуля библиотеку для JasperReports, которая делает работу с ним легкой
Работать с JasperReports тяжело — данные передаются хрупкими механизмами, бизнес-логика утекает в XML, а субрепорты требуют ручной синхронизации между Java и JRXML. jasper-modular-library решает это: отчёт описывается деревом POJO с аннотациями, процессор генерирует JRXML при компиляции, а рантайм собирает всё автоматически. В статье — типичные подходы к передаче данных и их проблемы, и как библиотека их устраняет.
https://habr.com/ru/articles/1018888/
#jasper #jasperreports #reports #reporting #java #springboot #library #opensource #pdf
-
PayU is hiring Lead Software Engineer - Java
🔧 #java #springboot #hibernate #aws #azure #gcp #techlead
🌎 Bangalore, India
⏰ Full-time
🏢 PayUJob details https://jobsfordevelopers.com/jobs/lead-software-engineer-java-at-payu-com-nov-18-2024-9caad3?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
Bitpanda is hiring Principal Engineer
🔧 #java #php #springboot #kafka #mongodb #postgresql #principalengineer
🌎 Vienna, Austria
⏰ Full-time
🏢 BitpandaJob details https://jobsfordevelopers.com/jobs/principal-engineer-at-bitpanda-com-feb-4-2026-8b4da1?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
PlayStation is hiring Senior Software Engineer
🔧 #golang #java #javascript #kotlin #python #swift #react #reactnative #springboot #android #ios #node #css #html #mvc #seniorengineer
🌎 San Diego, California, United States
⏰ Full-time
🏢 PlayStationJob details https://jobsfordevelopers.com/jobs/senior-software-engineer-at-playstation-com-dec-17-2025-9d0e33?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
[Перевод] HotSpot AOT-кэш: стартуем быстрее, греемся меньше
В новом переводе от команды Spring АйО рассмотрим, как можно ускорить Java-приложения без переписываний: в свежих JDK появились Ahead-of-Time оптимизации кэша, которые выносят «дорогие» этапы загрузки/линковки классов (и даже частично профилирование методов) из рантайма в заранее подготовленный артефакт. Рассмотрим как устроен AOT-кэш в JDK 24–26, какие есть workflow (3 шага vs 2 шага/в один прогон), где прячутся подводные камни вроде удвоения требований по памяти при - XX:AOTCacheOutput , и какие практики обучения помогут реально сократить время старта и быстрее выйти на пик производительности.
https://habr.com/ru/companies/spring_aio/articles/995398/
#java #kotlin #jvm #aot #cache #cachecontrol #spring #spring_boot #spring_framework #springboot
-
История одного безальтернативного переезда
Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.
https://habr.com/ru/companies/reksoft/articles/994970/
#springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide
-
История одного безальтернативного переезда
Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.
https://habr.com/ru/companies/reksoft/articles/994970/
#springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide
-
История одного безальтернативного переезда
Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.
https://habr.com/ru/companies/reksoft/articles/994970/
#springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide
-
История одного безальтернативного переезда
Всем привет! Сегодня я расскажу, как мы переводили наши Java-команды на новые рельсы. Проблема: В прошлом год стало ясно, что покупать лицензии Intellij IDEA проблематично. Предложения с ресурсов вроде «Авито»выглядели сомнительно и небезопасно. И российский рынок разработки очень плотно занялся переездом на свои решения, заказчики требовали использовать сертифицированное по местным реалиям ПО и все такое прочее. О переезде на новую среду не говорил разве что кто-то совсем уж ленивый. С чего мы начали: Изучив заново рынок, мы (я и другие лиды, которым на плечи легла эта ноша) стали анализировать доступные решения. Пишем мы чаще всего, используя Spring Framework и технологии около него, хотя иногда и вынуждены адаптироваться к конкретным пожеланиям заказчика и рекомендуемым им технологиям. Но фокус-группа акцентировала внимание вокруг Spring.
https://habr.com/ru/companies/reksoft/articles/994970/
#springboot #spring #spring_framework #kubernetes #helm #devops #jetbrains #gigaide #gigacode #openide
-
PlayStation is hiring Senior Software Engineer
🔧 #golang #java #javascript #kotlin #python #swift #react #reactnative #springboot #android #ios #node #css #html #mvc #seniorengineer
🌎 San Diego, California, United States
⏰ Full-time
🏢 PlayStationJob details https://jobsfordevelopers.com/jobs/senior-software-engineer-at-playstation-com-dec-17-2025-9d0e33?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
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: https://javapro.io/2026/01/29/houston-we-have-problems-with-the-queries/
#Java #JPA #Hibernate #Database #SQL #TestingTools #SpringBoot -
[Перевод] Паттерны проектирования в Data Engineering, которые необходимо освоить в 2026 году
Настоящая устойчивость систем — в архитектуре. В новом переводе от команды Spring АйО — 8 фундаментальных паттернов проектирования, на которых держатся все современные data engineering-стеки. Освоив их, вы перестанете тушить пожары и начнёте проектировать платформы, которые выдерживают продакшен.
https://habr.com/ru/companies/spring_aio/articles/990336/
#java #kotlin #system_design #patterns #spring #spring_boot #spring_framework #springboot #spring_data
-
MongoDB is hiring Senior Application Engineer
🔧 #java #javascript #python #springboot #node #api #hibernate #aws #azure #cicd #docker #gcp #kubernetes #mongodb #sql #tdd #seniorengineer
🌎 Bengaluru, India
⏰ Full-time
🏢 MongoDBJob details https://jobsfordevelopers.com/jobs/senior-application-engineer-at-mongodb-com-dec-23-2025-a70690?utm_source=mastodon.world&utm_medium=social&utm_campaign=posting
#jobalert #jobsearch #hiring -
[Перевод] Почему Kotlin ломает JPA
Используешь Kotlin с Jakarta Persistence и думаешь, что всё работает? Возможно, до первой неожиданной ошибки. data class, val, final-классы и даже значения по умолчанию — всё это может тайно мешать корректной работе JPA. Вместе с Торбеном Янссеном в новом переводе от команды Spring АйО разберем скрытые ловушки и показывают, как настроить проект правильно, чтобы не наступить на мину.
https://habr.com/ru/companies/spring_aio/articles/987890/
#java #kotlin #jpa #jvm #spring #spring_boot #spring_framework #springboot
-
Spring Boot — жажда скорости. CDS и разгон на старте
Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.
https://habr.com/ru/companies/haulmont/articles/978528/
#spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode
-
Spring Boot — жажда скорости. CDS и разгон на старте
Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.
https://habr.com/ru/companies/haulmont/articles/978528/
#spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode
-
Spring Boot — жажда скорости. CDS и разгон на старте
Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.
https://habr.com/ru/companies/haulmont/articles/978528/
#spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode
-
Spring Boot — жажда скорости. CDS и разгон на старте
Данная статья посвящена практическому изучению механизмов Class Data Sharing и AppCDS. В ней рассматривается, какие именно компоненты ускоряются CDS в HotSpot JVM, почему для Spring-приложений зачастую оказывается недостаточно использования «CDS по умолчанию», а также каким образом можно собрать .jsa -архив для приложения - как в локальной среде, так и при работе с Docker. Отдельное внимание уделено теоретическим аспектам JIT-компиляции и tiered compilation , а также практической части с измерениями времени запуска. В качестве дополнения рассматривается влияние использования Spring AOT, а также переход на Java 25 и применение Spring AOT Cache.
https://habr.com/ru/companies/haulmont/articles/978528/
#spring_framework #springboot #openide #docker #dockercompose #deploy #appcds #spring_aot #intellijidea #amplicode
-
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 и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск
-
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 и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск
-
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 и заметка о балансе между чтением и написанием кода. Приятного чтения! Читать тридацать первый выпуск
-
Почему Я выбираю Spring Data JDBC
Реляционные базы данных по-прежнему остаются главным хранилищем наших данных. А значит, вопрос выбора инструмента отображения данных из БД на уровне приложения - всё так же актуален. Долгое время я выбирал: Spring Data JPA. Уверен, что большинства из вас — тоже. Но времена меняются, и в 2025 для своих новых проектов я использую — Spring Data JDBC. Почему? Если вам стало любопытно — добро пожаловать под кат.
https://habr.com/ru/companies/haulmont/articles/973124/
#jpa #springdata #jdbc #hibernate #java #spring #orm #springboot
-
Wednesday Links - Edition 2025-11-26
https://dev.to/0xkkocel/wednesday-links-edition-2025-11-26-4l2g
#java #jvm #springboot #heartbeats #collections #idempotency -
Spring-boot-starter для паттерна Transaction outbox Kafka
В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.
https://habr.com/ru/articles/966802/
#kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa
-
Spring-boot-starter для паттерна Transaction outbox Kafka
В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.
https://habr.com/ru/articles/966802/
#kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa
-
Spring-boot-starter для паттерна Transaction outbox Kafka
В микросервисной архитектуре мы постоянно сталкиваемся с задачей: сохранить изменения в базе и гарантированно отправить событие в Kafka. На первый взгляд звучит просто — сделал транзакцию, отправил сообщение, закоммитил. Но в реальности между базой данных и брокером сообщений никакой общей транзакции нет. В этой статье я покажу, как я вынес всю логику Transaction Outbox в отдельный Spring Boot Starter , который можно подключить одной зависимостью. Он создаёт таблицу Outbox, конфигурирует шедулер, отвечает за отправку в Kafka и очистку, позволяя микросервисам сосредоточиться только на бизнес-логике.
https://habr.com/ru/articles/966802/
#kotlin #java #spring #springboot #starter #spring_boot_starter #kafka #outbox #jooq #spring_data_jpa