@ConditionalOnProperty`?- Включение или отключение бинов и конфигураций на основе значений в `application.properties` без изменения кода
- Загрузка разных бинов для разных сред с помощью конфигурационных параметров
- Исключение лишних бинов снижает потребление памяти и упрощает логику
🔸Включить бин, если свойство существует:
Используется аннотация
@ConditionalOnProperty(name="my.prop").Бин будет создан, если свойство my.prop существует и его значение не "false".
🔸Включить бин, если свойство равно определённому значению:
Добавляется параметр
havingValue="yes".Бин будет создан только в том случае, если значение свойства строго равно "yes".
🔸Включить бин, если свойство отсутствует:
Используется параметр
matchIfMissing=true.Бин будет создан даже в случае, если соответствующее свойство вообще не определено в конфигурации.
🔸Переключение реализаций в зависимости от значения свойства:
Определяются несколько бинов с разными значениями
havingValue.Будет создан только тот бин, значение которого соответствует текущему значению свойства.
👉 Java Portal
