一、bean的自动装配
Spring 容器能够自动装配相互合作的bean,这意味着容器不需要<constructor-arg>和<property>配置,能通过Bean工厂自动处理bean之间的协作。
autowire=“”
二、byType:把与Bean的属性具有相同类型的其他Bean自动装配到Bean的对应属性中。
https://www.yiibai.com/spring/spring-autowiring-by-type.html
三、byName:如果一个bean的名称与其他bean属性的名称是一样的,那么将自动装配它。
https://www.yiibai.com/spring/spring-autowiring-by-name.html
需要注意的是依赖于B的A 中属性b要和B的id一致
四、constructor – 在构造函数参数的byType方式
https://www.yiibai.com/spring/spring-auto-wiring-beans-in-xml.html
五、autodetect – 如果找到默认的构造函数,使用“自动装配用构造”; 否则,使用“按类型自动装配”
https://www.yiibai.com/spring/spring-autowiring-by-autodetect.html
六、默认方式
no:默认的方式是不进行自动装配,通过显式设置ref 属性来进行装配。
<bean id="person" class="com.yiibai.common.Person">
<property name="ability" ref="invisible" />
</bean>
<bean id="invisible" class="com.yiibai.common.Ability" >
<property name="skill" value="Invisible" />
</bean>
七、自动配置优缺点
优点
- 自动装配可以大大地减少属性和构造器参数的指派。
缺点
- 基本数据类型:你不能自动装配简单的属性,如基本数据类型,String字符串,和类。
- 模糊特性:自动装配不如显式装配精确,如果有可能,建议使用显式装配。