Maison  >  Article  >  Java  >  Quelles sont les priorités et les méthodes des fichiers de configuration multi-environnements dans Java Spring Boot ?

Quelles sont les priorités et les méthodes des fichiers de configuration multi-environnements dans Java Spring Boot ?

PHPz
PHPzavant
2023-04-22 23:28:062552parcourir

    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 fichier

    1.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

    Quelles sont les priorités et les méthodes des fichiers de configuration multi-environnements dans Java Spring Boot ? 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!

    Déclaration:
    Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer