Рубрики
Без рубрики

Руководство по свойствам @EnableConfigurationProperties

Краткий и практический обзор свойств @enableconfiguration весной.

Автор оригинала: Krzysztof Woyke.

1. введение

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

2. Назначение аннотации @EnableConfigurationProperties

@Свойства enableconfigurationproperty аннотация строго связана с @@Свойства конфигурации.

Это обеспечивает поддержку @ConfigurationProperties аннотированных классов в нашем приложении. Однако стоит отметить, что в документации Spring Boot говорится, что каждый проект автоматически включает @EnableConfigurationProperties. Следовательно, @Configurationproperties поддержка неявно включена в каждом приложении Spring Boot.

Чтобы использовать класс конфигурации в нашем проекте, нам нужно зарегистрировать его как обычный компонент Spring.

Прежде всего, мы можем аннотировать такой класс с помощью @Component. В качестве альтернативы мы можем использовать @Bean фабричный метод.

Однако в определенных ситуациях мы можем предпочесть сохранить @ConfigurationProperties класс в виде простого POJO . Это когда @EnableConfigurationProperties пригодится. Мы можем указать все компоненты конфигурации непосредственно в этой аннотации.

Это удобный способ быстрой регистрации @Свойства конфигурации аннотированные бобы.

3. Использование свойств @EnableConfigurationProperties

Теперь давайте посмотрим, как использовать @EnableConfigurationProperties на практике.

Во-первых, нам нужно определить наш пример класса конфигурации:

@ConfigurationProperties(prefix = "additional")
public class AdditionalProperties {

    private String unit;
    private int max;

    // standard getters and setters
}

Обратите внимание, что мы аннотировали Дополнительные свойства только с помощью @ConfigurationProperties. Это все еще простое POJO!

Наконец, давайте зарегистрируем наш компонент конфигурации с помощью @ EnableConfigurationProperties :

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

Вот и все! Теперь мы можем использовать Дополнительные свойства , как и любой другой весенний боб.

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

В этом кратком руководстве мы представили удобный способ быстрой регистрации @ Свойств конфигурации аннотированного класса весной.

Как обычно, все примеры, используемые в этой статье, доступны на GitHub.