spring的注入方法:属性注入
构造器注入
工厂方法注入
属性注入:就是通过settr()方法注入bean的属性值(最常见的注入方法)
<bean id="beasa" class='srping4.beas.beasa'>
<property name="name" value="吴彦涛"></property>
</bean>
构造器注入:构造器注入在constructor-arg中声明属性;(constructor-arg没有name属性)
<!-- 构造器注入 -->
<bean id="car2" class='srping4.beas.Car'>
<constructor-arg value="auti" index="0"></constructor-arg>
<constructor-arg value="auti" index="1"></constructor-arg>
<constructor-arg value="123456789" type="java.lang.String"></constructor-arg>
<constructor-arg type="java.lang.String">
<value>250</value>
</constructor-arg>
<constructor-arg type="java.lang.String">
<value><![CDATA[<sa*/*(>]]></value><!--这样就可以写特殊字符 -->
</constructor-arg>
</bean>
使用构造器注入属性值可以指定参数的位置和参数类型,以区分重载的构造器;
private String name;
private String aaa;
private String vvv;
public Car(String name, String aaa, String vvv) {
super();
this.name = name;
this.aaa = aaa;
this.vvv = vvv;
}
@Override
public String toString() {
return "Car [name=" + name + ", aaa=" + aaa + ", vvv=" + vvv + "]";
}
可以使用property的ref属性建立bean之间的关系
<bean id="beasa" class='srping4.beas.beasa'>
<property name="name" value="吴彦涛"></property>
<property name="name" ref="car2"></property>
</bean>
<bean id="car2" class='srping4.beas.Car'>
<constructor-arg value="auti" index="0"></constructor-arg>
<constructor-arg value="auti" index="1"></constructor-arg>
<constructor-arg value="123456789" type="java.lang.String"></constructor-arg>
<constructor-arg type="java.lang.String">
<value>250</value>
</constructor-arg>
<constructor-arg type="java.lang.String">
<value><![CDATA[<sa*/*(>]]></value><!--这样就可以写特殊字符 -->
</constructor-arg>
</bean>