在春天,我宣布像这样的豆:
<bean id="dao" class="com.gestion.banque.dao.BanqueDao"></bean>
我发现了一个名为autowire autowire="byType"
的属性,它的值是default
或byType
或byName
。
<bean id="dao" class="com.gestion.banque.dao.BanqueDao" autowire="byType"></bean>
我对此感到困惑:
1 - >你能解释一下这个属性是什么吗?
2 - >这个属性的作用是什么?
3 - > autowire
属性和@Autowired
注释之间的关系是什么?
4 - >他们的价值观有什么不同? ByName
&& byValue
之间的示例差异。
(1-2)使用元素的autowire属性为bean定义指定autowire模式。 (3)使用注释进行自动装配与使用XML中的autowire属性没有太大区别。但它确实允许更精细的自动装配,您可以选择性地注释某些属性以进行自动装配。 (4)byType - 按属性名称自动装配。 Spring容器在XML配置文件中查看autowire属性设置为byName的bean的属性。然后,它尝试匹配并将其属性与配置文件中由相同名称定义的bean相连。 byType - 按属性数据类型自动装配。 Spring容器在XML配置文件中查看autowire属性设置为byType的bean的属性。然后,如果属性的类型与配置文件中的一个bean名称匹配,则会尝试匹配并连接属性。如果存在多个这样的bean,则抛出致命异常。
有关更多信息,请使用this site或阅读Wall的'Spring in Action'
@Autowired注释在Spring中执行依赖项自动注入。
您未明确在属性标记中设置的所有bean属性将通过属性值策略之一注入