interface A{
void some();
}
@Component
class B implements A{
@override
some(){
}
}
@Component
class C implements A{
@override
some(){
}
}
Class D {
@Autowired
List<A> somes;//will it have the instances of both
}
我正在开发一个项目,我们有多个类实现相同的接口。 如何让D类中的列表包含B类和C类的bean?
答案 0 :(得分:6)
实际上你会得到一个解决bean冲突异常,
有各种解决方案:
SM_CYCURSOR
@Component
@Primary
class B implements A{
@override
some(){
}
}
@Component
class C implements A{
@override
some(){
}
}
Class D {
@Autowired
List<A> somes;//B will be injected because it primary
}