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>