Heim  >  Artikel  >  Java  >  Was sind die Prioritäten und Methoden von Konfigurationsdateien für mehrere Umgebungen in Java Spring Boot?

Was sind die Prioritäten und Methoden von Konfigurationsdateien für mehrere Umgebungen in Java Spring Boot?

PHPz
PHPznach vorne
2023-04-22 23:28:062549Durchsuche

    Vorwort

    Frage: Springboot-Projekt, wie trennt man die Konfigurationsdateien für Entwicklungsumgebung, Testumgebung und Produktionsumgebung?

    Antwort: Methode mit mehreren Profildateien

    1. Konfiguration mehrerer Umgebungen (Profil)

    1.1, Eigenschaftendateikonfiguration

    application.properties: Hauptkonfigurationsdatei

    Die Konfiguration der Hauptkonfigurationsdatei bestimmt, welche Umgebung zum Laden der Konfigurationsdatei

      spring.profiles.active=dev

    wählt das Laden verschiedener Umgebungskonfigurationen

    application-{profile}.properties

    entsprechend dem spring.profiles.active-Wert

      spring:
          profiles:
              active:dev

      Entwicklungs-, Test- und Produktionsumgebungskonfigurationsdateien:
    • application-dev .properties: Konfigurationsdatei für die Entwicklungsumgebung

    • application-test.properties: Konfigurationsdatei für die Testumgebung

    application-prod.properties: Konfigurationsdatei für die Produktionsumgebung

    1.2, YML-Dateikonfiguration

    application.yml : Hauptkonfigurationsdatei

    Hauptkonfigurationsdateikonfiguration Bestimmen Sie, welche Umgebungskonfigurationsdatei geladen werden soll

    application-{profile}.yml
    Entsprechend dem spring.profiles.active-Wert wählen Sie, ob verschiedene Umgebungskonfigurationen geladen werden sollen
    #默认配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: prod
      Konfigurationsdateien für Entwicklungs-, Test- und Produktionsumgebungen:
    • application-dev.yml: Konfigurationsdatei für die Entwicklungsumgebung

    • application-test.yml: Konfigurationsdatei für die Testumgebung

    application-prod.yml: Konfigurationsdatei für die Produktionsumgebung

    1.3 die Hauptkonfigurationsdatei-Switching-Konfiguration

    1.3.1. Switch-Produktionskonfiguration

    #开发环境配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: dev

    1.3.2, Switch-Entwicklungskonfiguration

    #测试环境配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: test

    1.3.3, Switch-Testkonfiguration

    指当前项目根目录;
    1.4, Befehlszeilenaktivierungskonfiguration Datei

    1.4.1, Konfigurationsdatei für die Befehlszeilenaktivierung

    java -jar springboot-0.0.1-SNAPSHOT.jar--spring.profiles.active=dev

    1.4.2, Aktivierung der Parameter der virtuellen Maschine

    java -Dspring.profiles.active=dev -jar springboot- 0.0.1-SNAPSHOT.jar

    2. Standardkonfigurationsdatei
    • Wenn Spring Boot startet, werden die Dateien application.properties oder apllication.yml im Folgenden gescannt 5 Speicherorte und verwenden Sie sie als Standardkonfigurationsdatei von Spring Boot.

    • Datei:./config/"/

    • Datei:/config/

    • Datei:./

    • Klassenpfad:/config/

    Klassenpfad:/

    2.1 , file

      java -jar xxxx.jar --spring.config.location=外部文件
    2.2, classpath

    bezieht sich auf den Klassenpfad des aktuellen Projekts, also auf das Ressourcenverzeichnis
    • Hinweis:

    • application.properties am selben Speicherort hat eine höhere Priorität als application.yml

      • Alle Dateien am Speicherort werden geladen und die Konfiguration mit niedriger Priorität überschreibt die Konfiguration mit niedriger Priorität, um eine komplementäre Konfiguration zu bilden, das heißt:
      • Wenn derselbe Konfigurationsinhalt vorhanden ist, wird die Inhalte mit hoher Priorität überschreiben Inhalte mit niedriger Priorität.

      Bei unterschiedlichen Konfigurationsinhalten werden die Inhalte mit hoher und niedriger Priorität kombiniert. 3. Externe Konfigurationsdatei Geben Sie den Pfad der externen Konfigurationsdatei an (die Standardkonfigurationsdatei ist ungültig). Die Priorität ist die höchste.
     java -jar xxxx.jar --spring.config.additional-location=外部文件
    案例

    4. Die folgenden Konfigurationsdateien werden häufig verwendet (von hoher zu niedriger Priorität):

    Konfigurationsdateien (YAML-Dateien, Eigenschaftendateien)

    @Configuration @PropertySource angegeben in der Annotationsklasse Konfigurationsdatei

    Standardeigenschaften, angegeben durch SpringApplication.setDefaultProperties

    • Konfigurationsdatei

    Das obige ist der detaillierte Inhalt vonWas sind die Prioritäten und Methoden von Konfigurationsdateien für mehrere Umgebungen in Java Spring Boot?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen