基于注释的自动装配即使按类型也不能给出多个结果

时间:2013-02-16 12:24:22

标签: java autowired springsource

我的问题是:

在我使用上下文组件扫描而不是在xml中编写bean的Web应用程序中,bean是自动创建的,所以如果在类中我写@autowiring它是隐式的类型,在这种情况下永远不会有多个结果,如果我使用xml方式声明像

,通常会发生

我的理解是,在xml格式中,当我重复多个具有相同类的bean时,它只被实例化一次但值/属性值每次都不同,因为类是隐式的singelton。所以当我在那种情况下自动装配时,spring会混淆我是哪个bean谈论但是在annoations中由于豆子是由自己创造的,这种情况永远不会发生。

理解是否正确?

1 个答案:

答案 0 :(得分:1)

正确,它是由班级完成的。如果您需要自动装配同一类的几个bean,那么您可以使用

@Component(value="someName")

然后用

选择你想要的bean
@Qualifier("someName")
@Autowired