0
@Service
public class MyBean implements BeanBase {
}
を私がしたいですApp
MyBean
を使用して他のプロジェクトを妨害することなく使用します(彼らはまだBeanDefault
を使用します)。
私は(他の派生プロジェクトのコードを変更することができませんでした)の両方のプロジェクトBase
とMyDerived
にコードを変更することができますので、それを行う方法:それが唯一の予選豆のとき
- アプリケーションは
BeanDefault
を使用します私のプロジェクト
でMyBean
を使用BeanBase
@Service
@Primary
public class MyBean implements BeanBase {
}
しかし、私はそれが良い練習ですか?
あなたは '@ Primary'を使用する方法は良いですが、今では常にMyBeanのインスタンスを取得することがわかります。別のインスタンスを選択的に取得するには、ここに説明されているようにBeanに名前を付けて '@ Qualifier'アノテーションを使用できます - http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/#beans- autowired-annotation-qualifiers –
@BijuKunjummen「あなたはいつもMyBeanのインスタンスを取得していることがわかります。私の派生プロジェクトでのみ発生します...他の派生プロジェクトはまだBeanDefaultを使用しています... – Sayakiss
Ah私はあなたが正しいと思う、あなたの現在のアプローチはあなたのために働くでしょう。 –