springcloudアプリケーションのコンテキスト構造

1458 ワード

SpringApplicationまたはSpringApplicationBuilderからアプリケーションコンテキストを構築すると、Bootstrapコンテキストがコンテキストの親レベルに追加されます.これはSpringの機能であり、サブコンテキストは親プロセスから属性ソースとプロファイルを継承するので、Spring Cloud Cofigを使用しない場合と同じコンテキストを構築する場合と比較して、「主」アプリケーションコンテキストは他の属性ソースを含むことになる.追加の財産源は:
  • 「bootstrap」:Bootstrapコンテキストで任意のPropertySourceLocatorsが見つかった場合、オプションCompositePropertySourceは高い優先度として表示され、非空属性を有する.一例は、Spring Cloud Configサーバからの属性である.この属性のソースをカスタマイズする方法については、以下を参照してください.
  • 「appication Config:[classpath:bootstrap.yml]」(Springプロファイルがアクティブであれば、友達).bootstrap.yml(または属性)がある場合、これらの属性はブートコンテキストを設定し、親プロセス設定時にサブコンテキストに追加します.それらの優先度はapplication.yml以下であり、Spring Bootアプリケーションを作成するプロセスの正常部分としてサブレベルの任意の他の属性ソースに追加される.これらの属性ソースをカスタマイズする方法について説明します.以下を参照してください.
  • 属性ソースの順序付け規則のために、「ガイド」項目が優先されますが、これらの項目はbootstrap.ymlからのデータを含まないので、非常に低い優先度を持っていますが、デフォルト値を設定するために使用されてもいいです.
    作成した任意のApplicationContextの親コンテキストを簡単に設定することによって、コンテキスト構造を拡張することができます.例えば、自分のインターフェースを使用するか、SpringApplicationBuilderの便利な方法を使用することができます.環境を導くのは、あなたが自分の最も高級な祖先の父である.階層構造の各文脈には、親から子へと値を昇格させることがないように、自分の「ブート」属性のソースがあります.階層構造における各コンテキスト(原則として)は、異なるparent()を有してもよいので、構成サーバがある場合は、異なるリモート属性ソースが存在する.通常のSpringアプリケーションのコンテキスト行動規則は属性解析に適用されます.サブ環境の属性は名前と属性ソース名で親項目の属性をカバーします.child()は、階層全体でsibling()を共有することができますが、これは標準値ではありません.したがって、兄弟の状況は特に同じ資料や財産源を持つ必要はありません.両親と共通点を共有していますが.ソース