Доклад

Beyond @SpringBootApplication: создание собственных экосистем поверх Spring Boot

Зал 2

Написать стартер легко, сложнее сделать так, чтобы он работал в разнородной экосистеме с разными версиями Java и Spring Boot, не сломал соседние сервисы и не превратился в головную боль при подключении к проекту. Поговорим о реальных проблемах, с которыми сталкиваешься, когда пишешь платформенные решения поверх Spring Framework. Обсудим решения данных проблем на примере различных open-source проектов, таких как Axelix и непосредственно Spring Boot.

Разберем четыре конкретных вопроса:

  1. Как зарегистрировать бины динамически, если их количество заранее неизвестно? Разберем подходы и обсудим, что нового принес Spring Framework 7.
  2. Как поддерживать стартер одновременно для разных версий Spring Boot? Обсудим архитектурные подходы и их компромиссы.
  3. Как тестировать автоконфигурации быстро и в изоляции? Разберем ApplicationContextRunner, кеширование тестовых контекстов и что изменилось в Spring Framework 7.
  4. Как гарантировать, что ваш стартер/библиотека работает на разных версиях Java?

Обсудим, почему это важно, и посмотрим, как этот вопрос решает сам Spring Boot project. Все темы разберем на конкретном примере одного сквозного сценария разработки платформенного стартера. При этом каждая тема самостоятельна и полезна отдельно.

Спикеры

Расписание