Guide de @EnableConfigurationProperties

1. Introduction

Dans ce tutoriel, nous allons vous montrer comment utiliser une @EnableConfigurationProperties annotation avec @ConfigurationProperties classes annotées .

2. Objectif de l' annotation @EnableConfigurationProperties

L' annotation @EnableConfigurationProperties est strictement connectée à @ConfiguratonProperties.

Il permet la prise en charge des classes annotées @ConfigurationProperties dans notre application. Cependant, il convient de noter que la documentation de Spring Boot indique que chaque projet comprend automatiquement @EnableConfigurationProperties. Par conséquent, la prise en charge de @ConfiguratonProperties est implicitement activée dans chaque application Spring Boot.

Afin d'utiliser une classe de configuration dans notre projet, nous devons l'enregistrer comme un bean Spring standard.

Tout d'abord, nous pouvons annoter une telle classe avec @Component. Alternativement, nous pouvons utiliser une méthode de fabrique @Bean .

Cependant, dans certaines situations, nous pouvons préférer conserver une classe @ConfigurationProperties comme un simple POJO . C'est à ce moment que @EnableConfigurationProperties est utile. Nous pouvons spécifier tous les beans de configuration directement sur cette annotation.

C'est un moyen pratique d'enregistrer rapidement les beans annotés @ConfigurationProperties .

3. Utilisation de @EnableConfigurationProperties

Voyons maintenant comment utiliser @EnableConfigurationProperties dans la pratique.

Tout d'abord, nous devons définir notre exemple de classe de configuration:

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

Notez que nous avons annoté les AdditionalProperties uniquement avec @ConfigurationProperties. C'est toujours un simple POJO!

Enfin, enregistrons notre bean de configuration en utilisant @ EnableConfigurationProperties :

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

C'est tout! Nous pouvons maintenant utiliser AdditionalProperties comme n'importe quel autre bean Spring.

4. Conclusion

Dans ce tutoriel rapide, nous avons présenté un moyen pratique d'enregistrer rapidement une classe annotée @ ConfigurationProperties dans Spring.

Comme d'habitude, tous les exemples utilisés dans cet article sont disponibles à l'adresse over sur GitHub.