Avant-propos
Question : Projet Springboot, comment séparer les fichiers de configuration de l'environnement de développement, de l'environnement de test et de l'environnement de production ?
Réponse : Méthode de fichier de profil multiple
1. Configuration d'environnements multiples (profil)
1.1, configuration du fichier de propriétés
application.properties : fichier de configuration principal
La configuration du fichier de configuration principal détermine quel environnement charger Le fichier de configuration
spring.profiles.active=dev
choisit de charger différentes configurations d'environnement
application-{profile}.properties
en fonction de la valeur spring.profiles.active
spring:
profiles:
active:dev
fichiers de configuration de l'environnement de développement, de test et de production :
- application-dev .properties : fichier de configuration de l'environnement de développement
- application-test.properties : fichier de configuration de l'environnement de test
application-prod.properties : fichier de configuration de l'environnement de production
1.2, configuration du fichier YML
application.yml : Fichier de configuration principal
Configuration du fichier de configuration principal Déterminez quel fichier de configuration d'environnement charger
application-{profile}.yml
Selon la valeur spring.profiles.active, choisissez de charger différentes configurations d'environnement#默认配置
server:
port: 8080
#切换配置
spring:
profiles:
active: prod
Fichiers de configuration d'environnement de développement, de test et de production :
- application-dev.yml : Fichier de configuration de l'environnement de développement
- application-test.yml : Fichier de configuration de l'environnement de test
application-prod.yml : Fichier de configuration de l'environnement de production
1.3. la configuration de commutation du fichier de configuration principal
1.3.1. Configuration de production de commutateur
#开发环境配置
server:
port: 8080
#切换配置
spring:
profiles:
active: dev
1.3.2, configuration de développement de commutateur
#测试环境配置
server:
port: 8080
#切换配置
spring:
profiles:
active: test
1.3.3, configuration de test de commutateur
指当前项目根目录;
1.4, configuration d'activation de ligne de commande fichier1.4.1, fichier de configuration d'activation en ligne de commande
java -jar springboot-0.0.1-SNAPSHOT.jar--spring.profiles.active=dev
1.4.2, activation des paramètres de la machine virtuelle
java -Dspring.profiles.active=dev -jar springboot- 0.0.1-SNAPSHOT.jar
2 Fichier de configuration par défaut
- Lorsque Spring Boot démarre, il analysera les fichiers application.properties ou apllication.yml dans les éléments suivants. 5 emplacements et utilisez-les comme fichier de configuration par défaut de Spring Boot.
- file:./config/"/
- file:/config/
- file:./
- classpath:/config/
classpath:/
2.1 , file
java -jar xxxx.jar --spring.config.location=外部文件
2.2, classpath
fait référence au chemin de classe du projet en cours, c'est-à-dire le répertoire des ressources
- Remarque :
- application.properties situé au même emplacement a une priorité plus élevée que application.yml
tous. Les fichiers de l'emplacement seront chargés et la configuration haute priorité écrasera la configuration basse priorité pour former une configuration complémentaire, c'est-à-dire :
- Lorsque le même contenu de configuration existe, le le contenu à haute priorité écrasera le contenu à faible priorité ;
Lorsqu'il y a différents contenus de configuration, les contenus de configuration à haute priorité et à faible priorité sont combinés
3. Fichier de configuration externe
Vous pouvez. spécifiez le chemin du fichier de configuration externe (le fichier de configuration par défaut n'est pas valide).
3.1, spring.config.location
java -jar xxxx.jar --spring.config.additional-location=外部文件
案例
3.2, spring.config.additional-location
Le fichier de configuration par défaut prend effet publiquement et son la priorité est la plus élevée.
rrreee
4. Priorité du fichier de configuration
- Les éléments suivants sont couramment utilisés. Le formulaire de configuration Spring Boot et son ordre de chargement (de priorité élevée à faible)
- Paramètres de ligne de commande
- Fichiers de configuration. (Fichiers YAML, fichiers de propriétés)
- @Configuration @PropertySource spécifié sur le fichier de configuration de la classe d'annotation
Propriétés par défaut spécifiées par SpringApplication.setDefaultProperties
Fichier de 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!