一、Spring框架简介
Spring框架是使用基本的JavaBean来完成以前只可能由EJB完成的事情,简单来说,就是要将原来需要程序员手动创建的类交给Spring管理,由Spring创建。在创建完成相应的Bean对象后,单例对象会存储在Bean工厂中,可以通过IOC容器getBean方法获取创建好的Bean对象,而要使用Bean对象,还需要对该对象进行依赖注入。
二、Setter注入
Setter注入就是在类中对需要注入的对象创建get和set方法,并在配置文件的Bean对象中用<properties>标签进行依赖注入,如下:
public class Student {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class Teacher {
private String name;
private Student student;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Dog getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
}
之后在配置文件中注入
<bean id="d1" class="com.fs.pojo.Student">
<property name="name" value="威猛先生"/>
</bean>
<bean id="p1" class="com.fs.pojo.Teacher">
<property name="name" value="张三"/>
<property name="student" ref="d1"/>
</bean>
三、构造方法注入
与前一种方法类似,只是这种方式并不是通过get、set方法进行注入,而是通过构造方法对Bean对象进行依赖注入,只需在配置文件中通过<constructor-arg>标签进行注入
<bean id="d1" class="com.fs.pojo.Student">
<constructor-arg name="name" value="威猛先生"/>
</bean>
<bean id="p1" class="com.fs.pojo.Teacher">
<constructor-arg name="name" value="王五"/>
<constructor-arg name="student" type="com.fs.pojo.Student" index="1" ref="d1"/>
</bean>