Spring@Configuration
アノテーションを使用してアプリケーションを構成しています。
@Configuration
現在、すべての Bean が宣言されている単一のクラスがあります。Bean の数が増えている (30 以上) ので、多くのクラスに分割したいと考えています。
一部の Bean は共通のクラス (主にユーティリティ クラス) を使用しています。
Foo.classはユーティリティ クラス です Bar.classとBaz.classは両方とも Foo.class を使用します
私はすべてFoo, Bar and Baz
を3つの異なる@Configuration
クラスに入れたい(それぞれConf1, Conf2 and Conf3
)
Conf1
問題は、 fromのインスタンスにアクセスできないことですConf2 and Conf3
:
Conf1.クラス
@Configuration
public class Conf1 {
@Bean
public Foo foo() {
return new Foo();
}
}
Conf2.クラス
@Configuration
public class Conf2 {
@Bean
public Bar bar() {
Bar bar = new Bar();
bar.setFoo(conf1.foo()); // Not possible !
return bar;
}
}
Conf3.クラス
@Configuration
public class Conf3 {
@Bean
public Baz baz() {
Baz baz = new Baz();
baz.setFoo(conf1.foo()); // Not possible !
return baz;
}
}
この問題を解決するにはどうすればよいですか?