spring_06装配bean_2
程序员文章站
2023-04-01 08:29:45
一.前言 1.自动装配尽量不要用,不如使用set明确 二. 通过构造函数注入值(Bean中可以没有get,set方法) 三. 自动装配bean的属性值 (1) byName的用法: (2) byType: byType:寻找和属性类型相同的bean, 找不到,装不上,找到多个抛异常。 (3) con ......
一.前言
1.自动装配尽量不要用,不如使用set明确
二. 通过构造函数注入值(bean中可以没有get,set方法)
<bean id="emp" class="com.ahd.constructor.employee"> <constructor-arg index="0" type="java.lang.string" value="ahd"></constructor-arg> <constructor-arg index="1" type="int" value="1"></constructor-arg> </bean>
三. 自动装配bean的属性值
(1) byname的用法:
<!-- 配置一个master对象 --> <bean id="master" class="com.hsp.autowire.master" autowire="byname"> <property name="name"> <value>顺平</value> </property> </bean> <!-- 配置dog对象 --> <bean id="dog" class="com.hsp.autowire.dog"> <property name="name" value="小黄"/> <property name="age" value="3"/> </bean>
(2) bytype: bytype:寻找和属性类型相同的bean,
找不到,装不上,找到多个抛异常。
(3) constructor: autowire="constructor"
说明 : 查找和bean的构造参数一致的一个或多个bean,若找不到或找到多个,抛异常。按照参数的类型装配
(4) autodetect
说明 : autowire="autodetect"
(3)和(2)之间选一个方式。不确定性的处理与(3)和(2)一致。
(5) defualt
这个需要在<beans defualt-autorwire=“指定” />
当你在<beans >指定了 default-atuowrite后, 所有的bean的 默认的autowire就是 指定的装配方法;
如果没有在<beans defualt-autorwire=“指定” /> 没有 defualt-autorwire=“指定” ,则默认是
defualt-autorwire=”no”
(6) no: 不自动装配
上一篇: python打包到pypi小结
下一篇: 朋友将喝迷糊的我送回家
推荐阅读