Миграция с Spring Boot 3 на 4
Dan Vega
0:00 / 0:00
Миграция с Spring Boot 3 на 4
4 098 просмотров · 23 часа назад
Dan Vega
93,6 тыс. подписчиков
4 098 просмотров · 23 часа назад
Поддержка открытого исходного кода для Spring Boot 3 завершилась 30 июня 2026 года. Если вы всё ещё используете версию 3, это обновление скоро будет для вас. Так что давайте сделаем это по-настоящему. Без слайдов. Мы повысим версию и исправим все ошибки.
Я беру небольшой API для конференций на Spring Boot 3.5.16 и Java 17 и обновляю его до Spring Boot 4.1.1 и Java 25 прямо на камеру. Компилятор обнаруживает некоторые ошибки. Другие скрываются за вводящей в заблуждение ошибкой, одним неудачным тестом или вообще без предупреждения. Мы исправляем каждую из них и обсуждаем причины их возникновения. Затем я покажу, как Spring Application Advisor автоматизирует это обновление для множества приложений.
Почему модульная автоконфигурация в Spring Boot 4 приводит к тому, что Flyway молча перестаёт работать, а консоль H2 возвращает ошибку 404, и какие стартеры возвращают их обратно
Как перейти с Jackson 2 на Jackson 3: импорт tools.jackson, JsonMapperBuilderCustomizer, неизменяемый построитель JsonMapper и непроверяемые исключения
Как исправить неработающие тесты с помощью spring-boot-starter-webmvc-test, нового пакета @WebMvcTest и @MockitoBean
Как Jackson 3 изменяет вывод даты и обработку null для примитивов, и как сохранить старый JSON-контракт
Как заменить устаревшие аннотации в стиле JSR-305 на JSpecify @NullMarked и @Nullable
Если это помогло, поставьте лайк, подпишитесь на канал и расскажите в комментариях, какая ошибка вас подвела. Удачного кодирования!
0:00 - Вступление: Поддержка Spring Boot 3 прекращена
1:15 - Обзор демонстрационного приложения Spring Boot 3
3:30 - Запуск приложения и проверка дат поддержки
4:30 - Почему H2 и Flyway просто работают в Boot 3
5:45 - Обновление до Spring Boot 4.1.1 и Java 25
7:00 - Перерыв 1: Jackson 2 до Jackson 3
9:30 - Перерыв 2: Тестовые стартеры и @MockitoBean
11:30 - Перерыв 3: Flyway никогда не запускается
13:30 - Перерыв 4: Даты становятся строками ISO
15:30 - Перерыв 5: Зеленая сборка, консоль H2 исчезла
17:00 - Перерыв 6: Безопасность при нулевых значениях с помощью JSpecify
19:00 - Перерыв 7: Нулевые места теперь возвращают 400
21:00 - Масштабное обновление: OpenRewrite и Application Advisor
22:30 - Демонстрация Application Advisor
25:00 - Подведение итогов
🔗Ресурсы и ссылки, упомянутые в этом видео:
Репозиторий GitHub: Миграция Spring Boot с 3 на 4: https://github.com/danvega/spring-boo...
График поддержки Spring Boot: https://spring.io/projects/spring-boot
Application Advisor: https://enterprise.spring.io/spring-a...
Spring Initializr: https://start.spring.io
JSpecify: https://jspecify.dev
👋🏻Свяжитесь со мной:
Веб-сайт: https://www.danvega.dev
Twitter: / therealdanvega
Github: https://github.com/danvega
LinkedIn: / danvega
Рассылка новостей: https://www.danvega.dev/newsletter
ПОДПИСЫВАЙТЕСЬ НА МОЙ КАНАЛ: / @danvega ❤️