它应该像这样工作(从你的XML中删除ArrayList bean):
public Class Xyz { private List<Daemon> daemons; @Autowired public void setDaemons(List<Daemon> daemons){ this.daemons = daemons; }}我认为没有办法用XML做到这一点。
参见: 3.9.2。@Autowired和@Inject:
通过将注释添加到需要该类型数组的字段或方法中,还可以从ApplicationContext提供特定类型的所有bean:
public class MovieRecommender { @Autowired private MovieCatalog[] movieCatalogs; // ...}对于类型化的集合也是如此:
public class MovieRecommender { private Set<MovieCatalog> movieCatalogs; @Autowired // or if you don't want a setter, annotate the field public void setMovieCatalogs(Set<MovieCatalog> movieCatalogs) { this.movieCatalogs = movieCatalogs; } // ...}顺便说一句,从Spring 4.x开始,这些列表可以使用@Ordered机制自动排序。



