Блог первоначально опубликован в моем блоге js blogs.github.io
- Вступление
- Используемые технологии
- Структура проекта
- Создание классов конфигурации
Вступление
Цель этого блога – понять автоматическую настройку, предоставляемую Spring Boot. Я буду создавать библиотеку ведения журнала для демонстрационных целей, которая будет включать класс автоматической настройки для создания всех необходимых компонентов для этой библиотеки.
Используемые технологии
- Java 11
- Пружинный ботинок 2.2.4
- Уровень 6.0.1
Структура проекта
Я использую многомодульный проект Gradle. Модуль библиотека ведения журнала
будет общей библиотекой, которая будет использоваться в сервисе модуль.
Создание классов конфигурации
Теперь пришло время создать необходимые классы конфигурации. Я создал класс конфигурации под названием Автоконфигурация ведения журнала
и помечен как @Конфигурация
и создал один условный компонент .
@Configuration public class LoggingAutoConfiguration { // We can define beans here @ConditionalOnMissingBean(Logger.class) @Bean public Logger getLogger() { return new ConsoleLogger(); } }
На данный момент этот класс представляет собой обычную конфигурацию spring, и чтобы сделать его классом автоматической настройки, нам нужно выполнить 2 шага:
Шаг 1: Создайте spring.factories файл
Создайте файл в библиотеке журналов
с именем spring.factories
в разделе ресурсы\МЕТА-ИНФОРМАЦИЯ\
каталог.
Шаг 2: Зарегистрируйте класс автоматической настройки
Теперь добавьте свой класс конфигурации в spring.factories
.
org.springframework.boot.autoconfigure.EnableAutoConfiguration=tutorials.logging.LoggingAutoConfiguration
Вот и все!!!
Теперь мы можем внедрить модуль в сервис
и нам не нужно указывать какой-либо пакет для сканирования из библиотеки регистрации
наш класс автоматической настройки позаботится об этом.
Вы можете найти работающий код здесь
Оригинал: “https://dev.to/jeetmp3/custom-auto-configuration-in-springboot-3pab”