浅谈Spring的自动装配:
简单的以byName为例
代码如下:
<bean id="master" class="com.autowire.Master" autowire="byName">
<property name="name" value="大毛"/>
</bean>
<bean id="dog" class="com.autowire.Dog">
<property name="name" value="大黄"/>
<property name="age" value="3"/>
</bean>
上面的代码定义了 autowire="byName" 当Spring容器被加载的时候会发生如下动作:
内存(我们可以简单的看成一个HashMap)
HashMap中put了("master",Master),("dog",Dog)这两个k-v
Master {name="大毛",Dog=null} (先将dog制空)
Dog(name="大黄",age="3")
因为autowire="byName" 所以master 对象将会查找与dog对象属性名字相同的对象并指向它 即dog->dog,因此就达到了自动装配的目的