9

IoC Containerによると、Springはコンテキスト階層またはコンテナーの階層を管理し、を使用し<ref parent="beanId"/>て親コンテキスト内のBeanを参照できます。Springはこのコンテナ階層を作成するためにどのようなメカニズムを使用していますか?このコマンドを使用<import resource="application-context.xml"/>してこの階層を作成できますか?階層を形成するアプリケーションコンテキストの例を提供してください。

4

1 に答える 1

15

アプリケーションコンテキスト階層は自動的に作成されます。たとえば、すべてのSpring MVCアプリケーションは、DispatcherServletごとに個別のコンテキストを作成します。このコンテキストは、共通の親コンテキストの子です。このようにして、各子コンテキストは親コンテキストからBeanにアクセスできますが、その逆はできません。また、兄弟コンテキストは分離されており、互いに見えません。

コンテキスト階層を手動で作成して、プロジェクトの粒度をより細かくすることができます。これは、たとえばのさまざまなコンストラクタを使用して実現できますClassPathXmlApplicationContext

<import>構築はインポートされたファイルからBeanをマージするため、Bean定義を複数のファイルに物理的に分割する方法ですが、それらはすべて1つのコンテキストになります。ところで、子コンテキストファイルを定義するためのXMLタグがないのは残念です(?)

于 2011-03-14T18:19:59.323 に答える