我想通过Spring注入自动将特定类型的元素填充到列表中。
if ";" in line:
line = line.replace(";","]")
以下是这些豆子:
@Component
class Scratch {
@Autowired
List<Person> person;
}
我想要得到的结果是@Configuration
class App {
@Bean
public Person coolPerson() {
return new CoolPerson();
}
@Bean
public Person stupidPerson() {
return new stupidPerson();
}
@Bean
public Person funnyPerson() {
return new FunnyPerson();
}
}
包含三个元素。上述List<Person>
中已声明的Bean
中的一个。
如果通过Spring的DI不可能做到这一点,那有没有办法?
我认为spring可以收集上下文中的所有Configuration
。那么,如何访问此上下文并手动填写列表呢?
伪
Bean
答案 0 :(得分:1)
是的,这可行:
ngOnInit
这将注入@Component
public class Scratch {
@Autowired
List<Person> person;
}
的每个实例。
您甚至可以在Person
中自动布线,它将注入该接口可以找到的所有实例。