Вместе мы выросли до сообщества, объединяющего более 5000 Spring-разработчиков! Ваша активность, поддержка и интерес к нашему контенту вдохновляют нас двигаться дальше.
В 2025 году мы приготовили для вас не менее амбициозные планы. Мы продолжим делиться с вами полезными материалами, обсуждать актуальные темы и развивать наше сообщество, чтобы каждому из вас было интересно и полезно быть частью этого движения.
Спасибо, что выбираете нас! Вместе мы сможем ещё больше.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍64❤31🔥22⚡6
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁38🔥7👍4❤2
Для тех, кто был слишком занят на неделе или просто пропустил некоторые посты, публикуем дайджест!
– AI-ассистент с помощью Spring AI
– Как жить без IntelliJ IDEA? Часть 5. Заключение
– JEP 485: Stream Gatherers
– Итоги 2024 года
– Исследование от Amplicode: Экосистема Spring в 2023/2024 годах
– Joker опубликовал выступления блока «Language Features» с Joker 2024
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥7❤4
Media is too big
VIEW IN TELEGRAM
Совсем скоро наступит 2025 год! По этому поводу эксперты сообщества подготовили для Вас небольшое видео-поздравление. Желаем приятного просмотра 🥳
С Новым годом, друзья!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥75👍21❤13⚡3🤩1
🔥 У WireMock теперь есть официальная интеграция со Spring Boot!
В конце прошлого года у WireMock появилась официальная интеграция со Spring Boot. WireMock — один из самых популярных инструментов для имитации HTTP API в разработке и тестировании. Но раньше его использование в Spring Boot проектах требовало дополнительных усилий: разработчики вручную настраивали мок-серверы, писали повторяющийся код и работали с фиксированными портами. Это особенно усложняло работу в динамических или контейнеризованных средах.
Ключевые преимущества, которые получат разработчики благодаря интеграции со Spring Boot:
1. Поддержка WireMock с Jetty 12. Появилась поддержка сборки WireMock на базе Jetty 12. Теперь используется компактный JAR-файл jetty12 вместо более крупного standalone JAR. Это особенно полезно для команд, которые стремятся минимизировать размер загружаемых зависимостей.
2. Аннотации для настройки WireMock в тестах. Теперь можно создавать и настраивать экземпляры WireMock с помощью аннотаций. Например, можно определить экземпляр WireMock в тестовом классе следующим образом:
Всего несколько строк кода — и интеграция автоматически создаст мок-сервер, настроит его и возьмёт на себя управление его жизненным циклом.
3. Поддержка Extension Factories через аннотации конфигурации. Благодаря этому нововведению процесс подключения расширений WireMock, таких как gRPC или любых других пользовательских плагинов, значительно упростился. Теперь для загрузки gRPC-расширения WireMock достаточно указать всего один параметр в конфигурации:
4. Динамическое выделение портов и интеграция с пропертями. Одной из частых проблем при тестировании с мок-серверами является конфликт портов. WireMock решает эту задачу за счёт динамического назначения портов, что уменьшает вероятность конфликтов. Однако такой подход требует передачи номера порта в базовый URL HTTP-клиента внутри Spring Boot приложения, что может быть не таким уж простым процессом.
Интеграция WireMock с Spring Boot решает этот вопрос: порт WireMock (и другие полезные параметры среды выполнения) автоматически добавляются в контекст приложения в виде свойств, за счёт чего легко получить назначенный порт и использовать его для настройки API-зависимостей тестируемого приложения. Например:
Начало работы с WireMock в Spring Boot:
Чтобы начать использовать официальную интеграцию WireMock с Spring Boot, добавьте в ваш
🔗 Для примеров и подробной информации о работе с WireMock в Spring Boot оставляем ссылку на официальную документацию.
В конце прошлого года у WireMock появилась официальная интеграция со Spring Boot. WireMock — один из самых популярных инструментов для имитации HTTP API в разработке и тестировании. Но раньше его использование в Spring Boot проектах требовало дополнительных усилий: разработчики вручную настраивали мок-серверы, писали повторяющийся код и работали с фиксированными портами. Это особенно усложняло работу в динамических или контейнеризованных средах.
Ключевые преимущества, которые получат разработчики благодаря интеграции со Spring Boot:
1. Поддержка WireMock с Jetty 12. Появилась поддержка сборки WireMock на базе Jetty 12. Теперь используется компактный JAR-файл jetty12 вместо более крупного standalone JAR. Это особенно полезно для команд, которые стремятся минимизировать размер загружаемых зависимостей.
2. Аннотации для настройки WireMock в тестах. Теперь можно создавать и настраивать экземпляры WireMock с помощью аннотаций. Например, можно определить экземпляр WireMock в тестовом классе следующим образом:
@SpringBootTest(classes = MyAppConfiguration.class)
@EnableWireMock
class MyTest {
@InjectWireMock
private WireMockServer wm;
// тесты
}
Всего несколько строк кода — и интеграция автоматически создаст мок-сервер, настроит его и возьмёт на себя управление его жизненным циклом.
3. Поддержка Extension Factories через аннотации конфигурации. Благодаря этому нововведению процесс подключения расширений WireMock, таких как gRPC или любых других пользовательских плагинов, значительно упростился. Теперь для загрузки gRPC-расширения WireMock достаточно указать всего один параметр в конфигурации:
@EnableWireMock({
@ConfigureWireMock(
extensionFactories = {Jetty12GrpcExtensionFactory.class}
)
})
4. Динамическое выделение портов и интеграция с пропертями. Одной из частых проблем при тестировании с мок-серверами является конфликт портов. WireMock решает эту задачу за счёт динамического назначения портов, что уменьшает вероятность конфликтов. Однако такой подход требует передачи номера порта в базовый URL HTTP-клиента внутри Spring Boot приложения, что может быть не таким уж простым процессом.
Интеграция WireMock с Spring Boot решает этот вопрос: порт WireMock (и другие полезные параметры среды выполнения) автоматически добавляются в контекст приложения в виде свойств, за счёт чего легко получить назначенный порт и использовать его для настройки API-зависимостей тестируемого приложения. Например:
api.client.base-url=http://localhost:${wiremock.server.port}
Начало работы с WireMock в Spring Boot:
Чтобы начать использовать официальную интеграцию WireMock с Spring Boot, добавьте в ваш
pom.xml
или build.gradle
следующую зависимость и начните использовать аннотации и параметры конфигурации для создания экземпляров WireMock в тестах:
@SpringBootTest(
webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
classes = MySpringbootApplication.class
)
@EnableWireMock({
@ConfigureWireMock(
name = "greeting-service"
)
})
class MyApplicationTests {
// Реализация тестов
}
🔗 Для примеров и подробной информации о работе с WireMock в Spring Boot оставляем ссылку на официальную документацию.
🔥60👍25❤14
Команда Spring АйО перевела и адаптировала доклад "Jakarta Data and Jakarta Persistence by Gavin King" Гевина Кинга с последнего Devoxx.
В своем выступлении Гевин Кинг рассказал о преимуществах и нововведениях Jakarta Data и Jakarta Persistence.
📚 Читать на Хабре: https://habr.com/ru/companies/spring_aio/articles/872830/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25❤9🔥7
Лучше поздно, чем никогда... Хотя, сегодня - старый Новый год! 🎅
Во втором выпуске подкаста Spring АйО в студии собрались 5 экспертов сообщества, чтобы обсудить несколько вопросов и поздравить участников сообщества с Новым годом!
💬 Аудио версию подкаста можно найти в комментариях
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍10❤8⚡1
⚙️ Постквантовая криптография в Java
Команда Spring АйО перевела статью про новые возможности грядущей версии Java 24, в которой появятся два JEP — 496 и 497, посвященные алгоритмам, устойчивым к квантовым атакам.
Эти технологии базируются на решеточной криптографии и помогут защитить данные от возможных угроз будущих квантовых компьютеров. Хотя их создание — дело не ближайших лет, разработчики уже готовятся к изменениям.
📚 Читать на Хабре: https://habr.com/ru/companies/spring_aio/articles/873886/
Команда Spring АйО перевела статью про новые возможности грядущей версии Java 24, в которой появятся два JEP — 496 и 497, посвященные алгоритмам, устойчивым к квантовым атакам.
Эти технологии базируются на решеточной криптографии и помогут защитить данные от возможных угроз будущих квантовых компьютеров. Хотя их создание — дело не ближайших лет, разработчики уже готовятся к изменениям.
📚 Читать на Хабре: https://habr.com/ru/companies/spring_aio/articles/873886/
🔥23❤10👍7⚡4🤔2
✨ Первая EAP-версия IntelliJ IDEA 2025.1 уже доступна!
Команда Spring АйО перевела статью от JetBrains про запуск EAP для IntelliJ IDEA 2025.1.
Среди новинок — поддержка Java 24, упрощённая работа со Spring Beans, улучшения отладчика и поддержка Gradle Daemon toolchains.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/874146/
Команда Spring АйО перевела статью от JetBrains про запуск EAP для IntelliJ IDEA 2025.1.
Среди новинок — поддержка Java 24, упрощённая работа со Spring Beans, улучшения отладчика и поддержка Gradle Daemon toolchains.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/874146/
👍17🔥10👎7❤6🤩2
🌟 Event-Driven микросервисы: масштабируемая архитектура с Kafka и Spring Boot
Event-driven архитектура - один из видов архитектур, который подходит для обеспечения независимости, масштабируемости и устойчивости микросервисов.
В новом переводе от команды Spring АйО вы в легкодоступной форме узнаете, как построить такую архитектуру, используя Apache Kafka и Spring Boot, а также ознакомитесь с пошаговой настройкой продюсеров, консьюмеров, решеним задач надежности и управлением схемами.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/874488/
Event-driven архитектура - один из видов архитектур, который подходит для обеспечения независимости, масштабируемости и устойчивости микросервисов.
В новом переводе от команды Spring АйО вы в легкодоступной форме узнаете, как построить такую архитектуру, используя Apache Kafka и Spring Boot, а также ознакомитесь с пошаговой настройкой продюсеров, консьюмеров, решеним задач надежности и управлением схемами.
📚 Читать на Хабр: https://habr.com/ru/companies/spring_aio/articles/874488/
🔥19👍8❤3👎1
Каким способом вы разворачиваете своё приложение в продакшене?
Anonymous Poll
16%
Действую по старинке: запускаю JAR, WAR, Uber-JAR, Fat-JAR на виртуалках
30%
Деплоюсь по взрослому на своём железе: Kubernetes, Helm
25%
Облака наше все: Kubernetes, Helm, Terraform
28%
Easy-peasy: Docker, Docker Compose
8%
Использую Ansible и модули для Docker/Kubernetes
12%
Я не знаю, как приложение оказывается в продакшене
3%
Иначе, напишу в комментариях
🔥11👍5❤3👌1
Для тех, кто был слишком занят на неделе или просто пропустил некоторые посты, публикуем дайджест!
– У WireMock теперь есть официальная интеграция со Spring Boot!
– Jakarta Data и Persistence: Инструменты, которые меняют подход к работе с данными
– Spring АйО - Новогодний подкаст
– Постквантовая криптография в Java
– Первая EAP-версия IntelliJ IDEA 2025.1 уже доступна!
– Event-Driven микросервисы: масштабируемая архитектура с Kafka и Spring Boot
– Каким способом вы разворачиваете своё приложение в продакшене?
– Что делает Axiom JDK для OpenIDE
– Joker 2024: записи докладов из блока «Data and storage»
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤5🔥5