ホームページ >Java >&#&チュートリアル >Java Spring Boot のマルチ環境構成ファイルの優先順位と方法は何ですか?

Java Spring Boot のマルチ環境構成ファイルの優先順位と方法は何ですか?

PHPz
PHPz転載
2023-04-22 23:28:062606ブラウズ

    まえがき

    質問: Springboot プロジェクト、開発環境、テスト環境、実稼働環境の構成ファイルを分離するにはどうすればよいですか?

    #回答: 複数のプロファイル ファイルを使用する方法

    1. 複数の環境設定 (プロファイル)

    1.1. プロパティ ファイルの設定

    application.properties: メイン構成ファイル

    メイン構成ファイル構成は、どの環境構成ファイルをロードするかを決定します

      spring.profiles.active=dev

    Spring によると。アクティブな値、さまざまな環境構成をロードすることを選択します

    application-{profile}.properties

    開発、テスト、および運用環境構成ファイル:

    • application-dev.プロパティ: 開発環境構成ファイル

    • application-test.properties: テスト環境構成ファイル

    • application-prod.properties: 実稼働環境構成ファイル

    1.2. YML ファイル設定

    application.yml: メイン設定ファイルメイン設定ファイルの設定により、どの環境設定ファイルをロードするかが決まります

      spring:
          profiles:
              active:dev

    spring.profiles.active 値に従って、さまざまな環境構成をロードすることを選択します

    application-{profile}.yml

    開発、テスト、および運用環境の構成ファイル:

    • application-dev.yml: 開発環境設定ファイル

    • ##application-test.yml: テスト環境設定ファイル
    • #application-prod.yml: 本番環境設定ファイル
    • 1.3. メイン設定ファイルとスイッチ設定の変更

    1.3.1. 本番環境設定の切り替え

    #默认配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: prod
    1.3.2. 開発構成の切り替え

    #开发环境配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: dev
    1.3.3. テスト構成の切り替え

    #测试环境配置
    server:
      port: 8080
    #切换配置
    spring:
      profiles:
        active: test
    1.4. コマンドライン起動設定ファイル

    1.4.1. コマンドライン起動設定ファイル

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

    1.4.2、仮想マシンパラメータのアクティブ化

    #java -Dspring.profiles.active=dev -jar springboot-0.0.1-SNAPSHOT。 jar2, デフォルト設定ファイル

    Spring Boot が起動すると、次の 5 つの場所にある application.properties または apllication.yml ファイルがスキャンされ、それらが Spring のデフォルト設定ファイルとして使用されます。ブート。

    ファイル:./config/"/

    • ファイル:/config/

    • ファイル:./

    • ##クラスパス:/config/

    • #クラスパス:/
    • # 2.1. ファイル
    指当前项目根目录;
  • 2.2、classpath

    は、現在のプロジェクトのクラスパス、つまりリソー​​ス ディレクトリを指します。 ## は同じ場所にあります。その場所の application.properties は application.yml よりも高い優先順位を持っています。
  • すべての場所にあるファイルがロードされ、優先順位の高い設定が優先順位の低い設定を上書きします。

    同じ構成コンテンツが存在する場合、優先度の高いコンテンツが優先度の低いコンテンツを上書きします。

    • 異なる内容を設定する場合、優先度の高い設定内容と優先度の低い設定内容が組み合わされます。

    • 3. 外部設定ファイル
      • 外部設定ファイルを指定できます パス(デフォルトの設定ファイルは無効です)
      • 3.1, spring.config.location

          java -jar xxxx.jar --spring.config.location=外部文件
      • 3.2, spring.config.Additional-location
      • デフォルトの構成ファイルは公的に有効であり、その優先順位は最高です..

         java -jar xxxx.jar --spring.config.additional-location=外部文件
        案例
      • 4. 構成ファイルの優先順位
    次に、一般的に使用される Spring Boot 構成フォームとその構成フォームを示します。読み込み順序 (優先順位が高いものから低いものへ)

    コマンド ライン パラメーター

    設定ファイル (YAML ファイル、プロパティ ファイル)

    @アノテーション クラス PropertySource の設定 @ 指定された設定ファイル

    • SpringApplication.setDefaultProperties で指定されたデフォルト プロパティ

    • 設定ファイル########### #

    以上がJava Spring Boot のマルチ環境構成ファイルの優先順位と方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。