[英]Auto-wiring/injection of Individual beans of a type and bean of list of beans of a type in Spring Configuration
我在 spring 配置中進行了以下設置
@Bean
public Myclass myClassOne() {
return new MyClass();
}
@Bean
public Myclass myClassTwo() {
return new MyClass();
}
@Bean
public YourClass processAndCreateYourClass(List<MyClass> allMyclasses) {
//Some business logic to process all myclasses beans so that I can create YourClass bean
return new YourClass();
}
這可以按預期工作,並且我得到了在processAndCreateYourClass
中注入的所有 myclasses 的列表(沒有自動裝配注釋)但是如果我還有一個像下面這樣的 bean 怎么辦
@Bean
public List<Myclass> listOfMyClasses() {
//return list of my classes from here
}
在processAndCreateYourClass
方法中,我期待所有單獨聲明的 myclass bean 和listOfMyClasses
返回的列表的聯合。 但情況似乎並非如此。 期望 Spring 的行為是否公平,或者有更好的優雅解決方案?
嗯..我建議您使用限定符將您的 bean 添加到“processAndCreateYourClass”。
像這樣的東西將具有可維護性且易於閱讀。
@Bean
public YourClass processAndCreateYourClass(@Qualifier("myClassOne") Myclass1, @Qualifier("myClassTwo") Myclass2) {
//Some business logic to process all myclasses beans so that I can create YourClass bean
return new YourClass();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.