对于类成员变量,spring支持构造函数注入,属性setter方法注入
0. domain类
public class Student {
private String name;
private int age;
public Student(){
}
public Student(String name,int age){
this.name=name;
this.age =age ;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
1.使用构造方法注入 通过 constructor 标签注入
<bean id="student" class="com.zmf.domain.Student">
<!-- index 属性 -->
<!-- <constructor-arg index="0" value="zmf"></constructor-arg>
<constructor-arg index="1" value="11"></constructor-arg> -->
<!-- type 属性 -->
<constructor-arg type="int" value="111"></constructor-arg>
<constructor-arg type="java.lang.String" value="xxxs"></constructor-arg>
</bean>
<bean id="student" class="com.zmf.domain.Student">
<property name="name" value="zmf"></property>
<property name="age" value="111"></property>
</bean>
-- 注入其他属性
public class Classroom {
private Student student;
public void setStudent(Student student){
this.student = student;
}
<bean id="classroom" class="com.zmf.domain.Classroom">
<property name="student" ref="student"></property>
</bean>
List属性注入
<property name="list">
<list>
<value>aaa</value>
<value>bbb</value>
</list>
</property>
map属性注入
<property name="">
<map>
<entry key="" value="">
</entry>
<entry key="" value="">
</entry>
</map>
</property>
set属性注入
<property name="">
<set>
<value></value>
<value></value>
</set>
</property>
properties 注入
private Properties pro;
<property name="pro">
<props>
<prop key="name">zmf</prop>
<prop key="age">11</prop>
</props>
</property>