Spring Boot et plusieurs fichiers de configuration externes
Spring Boot permet aux développeurs de charger des fichiers de configuration externes pour personnaliser les paramètres de l'application. Cela peut être utile pour remplacer les configurations par défaut ou spécifier des propriétés spécifiques à l'environnement. Cependant, un défi courant consiste à garantir que les configurations externes remplacent celles par défaut, en particulier lorsque plusieurs fichiers sont impliqués.
L'ordre de résolution des propriétés
Spring Boot suit un ordre spécifique lors de la résolution des valeurs de propriété :
Remplacement des propriétés par défaut par des fichiers externes
Pour remplacer les propriétés par défaut par des fichiers externes, utilisez la propriété spring.config.location . Cette propriété prend une liste de chemins de fichiers ou d'URL séparés par des virgules. Vous pouvez spécifier des fichiers dans le chemin de classe ou dans le dossier de configuration externe.
Par exemple, pour remplacer les propriétés par défaut par des fichiers externes situés dans le répertoire de travail actuel, utilisez :
-Dspring.config.location=file:./config
Cependant, dans les versions antérieures de Spring Boot (avant la version 2.0), spring.config.location avait un comportement différent. Il remplacerait uniquement application.properties et non les autres fichiers de propriétés.
Utilisation de spring.config.additional-location
Dans Spring Boot 2.0 et versions ultérieures, spring.config. location remplace les propriétés par défaut au lieu de les ajouter. Pour conserver les propriétés par défaut tout en incluant des propriétés supplémentaires, utilisez spring.config.additional-location.
Par exemple, pour conserver les propriétés par défaut et ajouter un fichier à partir du chemin de classe, utilisez :
-Dspring.config.location=file:./config -Dspring.config.additional-location=classpath:job1.properties,classpath:job2.properties
En spécifiant à la fois spring.config.location et spring.config.additional-location, vous pouvez vous assurer que les fichiers externes remplacent ceux par défaut, tout en préservant toutes les propriétés personnalisées définies dans le fichier par défaut. configuration.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!