SpringBoot では、application.properties に加えて、作成する他の設定ファイルのファイル名が application-{profile}.properties# を満たす必要があります。 ## 形式。
{profile} は環境識別子 (.properties ファイルである必要はなく、.yml の場合もあります) に対応し、対応する
{profile} 値は次のようにカスタマイズされます。開発者 (dev、product など) は、プロジェクトを開始するときに、対応するパラメーターを追加するだけで済み、springboot が構成ファイルを読み取ります。特定のプロファイル構成は、
spring.profiles.active プロパティを通じて
application.properties ファイルに設定されます。次に、例を使用して説明します。
spring.profiles.active=devで次のように構成するか、以下に示すように @spring.profiles.active@ を使用します
spring.profiles.active=@spring.profiles.active@これを使用する場合 この方法では、次の内容を pom.xml に追加する必要があります。
activeByDefault タグは、プロジェクトの開始時にデフォルトで読み込まれる構成ファイルを指定します。
<profiles> <profile> <id>dev</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <spring.profiles.active>dev</spring.profiles.active> </properties> </profile> <profile> <id>qa</id> <properties> <spring.profiles.active>qa</spring.profiles.active> </properties> </profile> <profile> <id>stage</id> <properties> <spring.profiles.active>stage</spring.profiles.active> </properties> </profile> <profile> <id>product</id> <properties> <spring.profiles.active>product</spring.profiles.active> </properties> </profile> </profiles>mvn clean package -P dev コマンドを実行してプロジェクトをパッケージ化して公開すると、jar/war パッケージ内の構成ファイルの @spring.profiles.active@ が dev に置き換えられます。
注2. SpringBoot での設定ファイルの読み込み順序@spring.profiles.active@
は、POM 内のラベル
> と一致している必要があります。そうでない場合は、エラーが報告されます。
設定ファイルの優先順位 (どの設定ファイルが正確であるか) ):
1. プロジェクトのルート ディレクトリの下の config ディレクトリ。 [最優先]##2. プロジェクトのルートディレクトリ。3. クラスパス下の config ディレクトリ。
4. クラスパス ディレクトリ (新しいプロジェクトを作成するときの application.properties のデフォルトの場所)。 [最低優先度]
設定ファイルのロード順序は優先順位と逆で、重複した設定がある場合、最初にロードした設定ファイルが上書きされるため、優先度の低い方が先にロードされます。
同じレベルのディレクトリに、
application.yml と application.properties
構成ファイルが同時に存在する場合、application.properties 構成ファイルが優先されます。つまり、最初に .yml ファイルをロードし、次に .properties ファイルをロードします。
優先順位: 1->2->3->4->5。
ファイルのロード順序: 5->4->3->2->1。
以上がSpringBoot は開発環境と製品環境を切り替えるために複数の構成ファイルをどのようにロードしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。