0%

SPRING7–基于XML的DI_BYNAME,BYTYPE域属性自动注入

1.byName就是通过Bean的id或者name,byType就是按Bean的Class的类型。

下面的例子就是一个时候才可以用

1
2
3
4
<bean id=“school1” class=“com.bean.service3.School” autowire=“byName”>
<property name=“id” value=“1”/>
<property name=“name” value=“张三”/>
</bean>

2.如果是两个,可能会出现以下情况

1
2
3
4
5
6
7
8
<bean id=“school1” class=“com.bean.service3.School” autowire=“byType“>
<property name=“id” value=“1”/>
<property name=“name” value=“张三”/>
</bean>
<bean id=“school2” class=“com.bean.service3.School” autowire=“byType“>
<property name=“id” value=“1”/>
<property name=“name” value=“张三”/>
</bean>

结果:报错。因为他们的class是一样的。
说明:byType不仅仅是以上的关系,还有is-a都不行。因为is-a是继承关系。