Guida a @EnableConfigurationProperties

1. Introduzione

In questo breve tutorial, vi mostreremo come utilizzare un @EnableConfigurationProperties un'annotazione con @ConfigurationProperties classi annotate .

2. Scopo del @EnableConfigurationProperties annotazione

L' annotazione @EnableConfigurationProperties è strettamente collegata a @ConfiguratonProperties.

Abilita il supporto per le classi annotate @ConfigurationProperties nella nostra applicazione. Tuttavia, vale la pena sottolineare che la documentazione di Spring Boot dice che ogni progetto include automaticamente @EnableConfigurationProperties. Pertanto, il supporto @ConfiguratonProperties è implicitamente attivato in ogni applicazione Spring Boot.

Per poter utilizzare una classe di configurazione nel nostro progetto, dobbiamo registrarla come un normale bean Spring.

Prima di tutto, possiamo annotare una classe del genere con @Component. In alternativa, possiamo utilizzare un metodo di fabbrica @Bean .

Tuttavia, in alcune situazioni, potremmo preferire mantenere una classe @ConfigurationProperties come un semplice POJO . Questo è quando @EnableConfigurationProperties torna utile. Possiamo specificare tutti i bean di configurazione direttamente su questa annotazione.

Questo è un modo conveniente per registrare rapidamente i bean annotati @ConfigurationProperties .

3. Utilizzo di @EnableConfigurationProperties

Vediamo ora come utilizzare in pratica @EnableConfigurationProperties .

Per prima cosa, dobbiamo definire la nostra classe di configurazione di esempio:

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

Notare che abbiamo annotato AdditionalProperties solo con @ConfigurationProperties. È ancora un semplice POJO!

Infine, registriamo il nostro bean di configurazione utilizzando @ EnableConfigurationProperties :

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

È tutto! Ora possiamo usare AdditionalProperties come qualsiasi altro Spring bean.

4. Conclusione

In questo breve tutorial, abbiamo presentato un modo conveniente per registrare rapidamente una classe con annotazioni @ ConfigurationProperties in Spring.

Come al solito, tutti gli esempi utilizzati in questo articolo sono disponibili su GitHub.