私は、Spring xml アプリケーション コンテキストを使用する場合は非常に単純に見えるが、注釈を使用する場合はより曖昧に見えるシナリオを理解しようとしています。
次のようなクラスがあるとします (これはすべて例のためです。クラス名などに注意を払わないでください...):
@Component
public class BusinessLogicImpl implements BusinessLogic {
@Autowire
BeanThatTalksWithDataSource beanThatTalksWithDataSource;
@Autowire
BeanThatDoesSomeWork beanThatDoesSomeWork;
}
そして、このBeanを使用する他のBeanがあります
@Component
public class MainLogicImpl implements MainLogic {
@Autowire
BusinesLogic businessLogic;
}
2 つの実装があると仮定しましょうBeanThatTalksWithDataSource
。1 つはファイル システム データ ソースで動作し、もう 1 つは DB で動作します。また、BeanThatDoesSomeWork
2 つの異なる実装があります。
BeanThatTalksWithDataSource
の 2 つの実装と の2 つの実装の各組み合わせを含む 4 つの異なる構成を作成BeanThatDoesSomeWork
し、最後に正しいバリアントを にロードしたいと考えていMainLogicImpl
ます。
xml ではかなり簡単です。4 つの異なる可能なコンテキストを保持する 4 つの xml ファイルを作成します。注釈を使用する場合、そのようなことと同等のものは何ですか?
@Configuration クラスではなく、アノテーションについて話していることを強調したいと思います。注釈だけでそれが可能かどうかを調べようとしています。