使用p命名空间 简化依赖注入的配置.
<bean id="p1" class="com.igeek.lesson6.Person" p:name="汤姆斯" p:age="12"></bean>
autowire
byName :由属性名自动装配。Spring 容器看到bean采用了自动装配byName模式(autowire="byName"),然后根据它的属性在Spring 容器中寻找与属性名相同bean进行关联
byType:由属性的数据类型自动装配。Spring容器看到bean采用了自动装配的byType模式(autowire="byType"),然后根据属性类型在Spring容器中寻找与属性类型相同bean进行关联。如果存在不止一个这样的bean,将抛出异常。
bean 的自动装配,springIoC容器 会自动装配bean组件之间的依赖关系
<bean id="tom" class="com.igeek.lesson6.Person" p:name="汤姆" p:age="12" autowire="byType"></bean>
<!-- <bean id="timo" class="com.igeek.lesson6.Pet" p:petName="提莫" p:age="20"></bean> -->
<bean id="houzi" class="com.igeek.lesson6.Pet" p:petName="猴子" p:age="20"></bean>
输出结果:
Person [name=汤姆, age=12, pet=Pet [petName=猴子, age=20]]