如何使用 spring 及其注释将多个 bean 自动注入 ArrayList 属性

how to auto inject multiple beans into an ArrayList property with spring and its annotation

例如我的 Action 中有一个数组列表 属性。

    private ArrayList<SitesBusiness> businesses;

SitesBusiness 只是一个接口,属性 旨在包含所有实现 SitesBusiness 的 bean。

问题是我想使用 spring 注释机制自动将实现 SitesBusiness 的所有 bean 注入到业务中。

有人可以帮忙吗?非常感谢。

我尝试在此方法上使用 AutoWired 来完成这项工作

    @Autowired
    public void addBusiness(SitesBusiness business) {
        System.out.println("SitesAction, addBusiness.DI1210, business.identifier: " + business.getIdentifier());
        for (int i = 0; i < this.businesses.size(); ++i) {
            if (GlobalMethods.getInstance().checkEqual(this.businesses.get(i), business) || GlobalMethods.getInstance().checkEqual(this.businesses.get(i).getIdentifier(), business.getIdentifier())) {
                return;
            }
        }
        this.businesses.add(business);
     }

不幸的是,这就是我得到的:

     expected single matching bean but found 2: accountBusiness,diaryBusiness

此代码应该有效:

@Autowired
private List<SitesBusiness> businesses;