0

次のシナリオがあります。

1) 2 つの xml 構成ファイル、たとえばfoo.xmlbar.xml. それらには、名前とそれぞれのClassPathXmlApplicationContext豆が含まれています。各 Bean には、コンストラクターを介して独自の xml 構成ファイルが順番に与えられます。fooFactorybarFactory

2) クライアント コードはメソッドとSingletonBeanFactoryLocatorメソッドgetInstanceを使用し、useBeanこれらのファクトリを取得します。例えばSingletonBeanFactoryLocator.getInstance("classpath:foo.xml").useBeanFactory("fooFactory");

要件: barFactory の一部の Bean は、fooFactory の一部の Bean にアクセスする必要があります。

現在の解決策は、fooFactory への参照を取得しSingletonBeanFactoryLocator.getInstance("classpath:foo.xml").useBeanFactory("fooFactory");、それを使用getBeanして必要な Bean を取得することです。

質問: から からの Bean にfooFactoryからの Bean を注入することは可能ですか?barFactorybarFactory

4

2 に答える 2

1

「共通の」アプリケーション コンテキスト xml がないのはなぜですか。

このファイルでは、foo と bar の両方で使用される Bean を定義できます。次に、この共通の xml を両方のアプリケーション コンテキストにインポートできます。

このアプローチでは、共通の xml で定義された Bean が 2 回作成されますが、これは問題になる場合とそうでない場合があります。SAME インスタンスを共有したい場合は、共通 Bean をシングルトンとして作成できます。

于 2013-01-09T09:00:50.533 に答える
0

これらのファクトリを同じ .xml で定義し、それらをチェーンすることになりました。次に、通常の fooFactory Bean の barFactory Bean への注入を行いました。

于 2013-01-15T06:33:20.107 に答える