ホームページ >Java >&#&チュートリアル >SpringBoot のブートストラップとアプリケーションの違いは何ですか?

SpringBoot のブートストラップとアプリケーションの違いは何ですか?

WBOY
WBOY転載
2023-05-16 17:46:343249ブラウズ

    ブートストラップとアプリケーションの違いの説明

    ボットストラップとアプリケーションは SpringBoot プロジェクトの設定ファイルであり、主に次の点が異なります

    (1) ロード順序の違い

    ブートストラップは Spring の親コンテキストによってロードされ、アプリケーションは子コンテキストによってロードされるため、ブートストラップ構成ファイルはアプリケーション構成ファイルよりも先にロードされます

    (2) 優先順位の違い

    ##ブートストラップで読み込んだ設定情報をアプリケーションの同じ設定で上書きすることはできません、二つの設定ファイルが同時に存在する場合はブートストラップがメインとなります

    (3) アプリケーション シナリオの違い ブートストラップの一般的なアプリケーション シナリオ

    1. 上書きできないいくつかの固定プロパティを構成します。一部のシステム レベルのパラメーター構成に使用されます

    ローカル構成ファイルはリモート構成ファイルを上書きできません's

    2. 暗号化/復号化が必要な一部のシナリオ

    3. Spring Cloud Config 構成センターを使用する場合は、構成センターに接続されている構成を追加する必要がありますブーストラップ構成ファイル内の外部構成センターの構成情報をロードするためのプロパティ、専門家による翻訳は次のとおりです

    SpringBoot のブートストラップとアプリケーションの違いは何ですか?

    #アプリケーションの一般的なアプリケーション シナリオ

    1. SpringBoot プロジェクトで一般的に使用される自動構成

    2. 一部のアプリケーション レベルのパラメーター構成に使用されます

    ほとんどの場合、2 つの状況を区別する必要はありません、アプリケーションを使用するだけで、効果は基本的に同じです

    SpringBoot 構成の優先順位 (ブートストラップとアプリケーション)

    ブートストラップとアプリケーションの違い

      bootstrap.yml は application.yml より前に置かれます。
    • ApplicationContext ブート フェーズでは、bootstrap.yml を使用できます。 Spring アプリケーション コンテキストは、親コンテキスト ApplicationContext によってロードされます。システムレベルのパラメータ設定を定義します。これらのパラメータは通常は変更されません。
    • application.yml は、アプリケーション レベルのパラメーター構成を定義するために使用されます。 spring-cloud-config とともに使用すると、application.yml で定義されたパラメーターを動的に置き換えることができます。
    • application.yml は、bootstrap.yml のパラメータ設定をオーバーライドします。
    • springboot 構成の優先順位

    内側から外側に向かって、外側の層が内側の層を覆います。

    コマンド ライン パラメーター> オペレーティング システムの環境変数> アプリケーション外部の構成ファイル> アプリケーション内の構成ファイル

    springcloud 構成センターに参加した後

    構成センター> コマンド ライン パラメーター> ; ローカル application.yml > ローカル bootstrap.yml

    構成によりオーバーライドが許可されます:

    spring:
      cloud:
        config:
          allowOverride: true
          overrideNone: true
          overrideSystemProperties: false

    以上がSpringBoot のブートストラップとアプリケーションの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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