コンテキスト:
Spring Boot では、外部ファイルからプロパティをロードします。アプリケーションの構成と環境固有の設定の管理に不可欠です。この記事では、クラスパスに保存されているデフォルトの構成ファイルをオーバーライドしながら複数の外部構成ファイルをロードするという課題について説明します。
プロパティ解決について:
Spring Boot はロードの特定の順序に従います。プロパティの解決:
外部構成ファイルの追加:
外部構成ファイルをプロジェクトに追加するには、カンマを受け入れる spring.config.location プロパティを使用します。パスまたはディレクトリの分離されたリスト。
Spring Boot 1.x:
Spring Boot 1.x では、spring.config.location プロパティはデフォルト ファイルの既存のリストを単に拡張しただけでした。これは、明示的に指定しない限り、外部ファイルがデフォルトをオーバーライドしないことを意味します。
Spring Boot 2.x 以降:
Spring Boot 2.x 以降では、 spring.config.location の動作が変更されました。デフォルトのプロパティを追加するのではなく、オーバーライドするようになりました。外部構成を追加するときにデフォルト構成を保持するには、 spring.config.Additional-location プロパティを使用します。
例:
2 つの外部構成ファイルをロードし、デフォルトのセットからのジョブ固有のプロパティ:
-Dspring.config.location=classpath:job1.properties,classpath:job2.properties -Dspring.config.additional-location=classpath:/src/main/resources/defaults.properties
この場合、job1.properties ファイルと job2.properties ファイルはdefaults.properties で定義されているジョブ関連のプロパティをオーバーライドします。 defaults.properties 内の残りのプロパティは保持されます。
以上がSpring Boot で複数の外部構成ファイルをロードしてデフォルトをオーバーライドする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。