Ръководство за @EnableConfigurationProperties

1. Въведение

В този кратък урок, ние ще ви покажем как да използвате @EnableConfigurationProperties анотация с @ConfigurationProperties анотирани класове .

2. Предназначение на @EnableConfigurationProperties Анотация

Анотацията @EnableConfigurationProperties е строго свързана с @ConfiguratonProperties.

Той дава възможност за поддръжка на коментирани класове @ConfigurationProperties в нашето приложение. Струва си обаче да се отбележи, че в документацията на Spring Boot се казва, че всеки проект автоматично включва @EnableConfigurationProperties. Следователно поддръжката на @ConfiguratonProperties е имплицитно включена във всяко приложение за пролетно стартиране.

За да използваме конфигурационен клас в нашия проект, трябва да го регистрираме като обикновен Spring bean.

На първо място, можем да анотираме такъв клас с @Component. Като алтернатива можем да използваме фабричен метод @Bean .

Въпреки това, в определени ситуации може да предпочетем да запазим клас @ConfigurationProperties като обикновен POJO . Това е, когато @EnableConfigurationProperties е полезен. Можем да посочим всички конфигурационни компоненти директно в тази анотация.

Това е удобен начин за бързо регистриране на @ConfigurationProperties коментирани зърна.

3. Използване на @EnableConfigurationProperties

Сега да видим как да използваме @EnableConfigurationProperties на практика.

Първо, трябва да дефинираме нашия примерен конфигурационен клас:

@ConfigurationProperties(prefix = "additional") public class AdditionalProperties { private String unit; private int max; // standard getters and setters }

Имайте предвид, че коментирахме AdditionalProperties само с @ConfigurationProperties. Все още е просто POJO!

И накрая, нека регистрираме нашия конфигурационен бин с помощта на @ EnableConfigurationProperties :

@Configuration @EnableConfigurationProperties(AdditionalProperties.class) public class AdditionalConfiguration { @Autowired private AdditionalProperties additionalProperties; // make use of the bound properties }

Това е всичко! Вече можем да използваме AdditionalProperties като всеки друг пролетен боб.

4. Заключение

В този бърз урок представихме удобен начин за бързо регистриране на клас с коментирани @ ConfigurationProperties през пролетта.

Както обикновено, всички примери, използвани в тази статия, са достъпни в GitHub.