我有一些Spring @Components和@Qualifier注解,我们假设它在示例“A”和“B”中。我想将它们(仅使用注释)注入List。我怎样才能做到这一点 ?弹簧自动装配合格豆的集合
@Component
public class WhatIHave {
@Autowired
@Qualifier("A")
private MyType firstBean;
@Autowired
@Qualifier("B")
private MyType secondBean;
....
}
@Component
public class WhatIWantToHave {
@Autowired
@Qualifier("A", "B") //something like that
private List<MyType> beans;
...
}
我是否需要在@Configuration类中创建它?
@Configuration
public class MyConfiguration {
@Autowired
@Qualifier("A")
private MyType firstBean;
@Autowired
@Qualifier("B")
private MyType secondBean;
@Bean
public List<MyType> beans() {
return Lists.newArrayList(firstBean, secondBean);
}
}
还有另一种方法可以做到这一点吗?
只需从'@ Autowired'列表中删除'@ Qualifier'。 – Kayaman
我知道@Qualifier(“A”,“B”)是不正确的语法,但它只是一个想法,而不是我提供的配置类。 – Ferdezo
找到这个[答案](http://stackoverflow.com/questions/36262825/binding-annotation-in-spring/36277309#36277309) – marok