概念
控制反转IOC:将对象的创建权交给spring,由spring来创建对象
依赖注入DI:对属性的初始值的注入也交给spring,在创建对象的时候就已经给对象的属性赋值
操作
第一步
创建一个实体类并为所有属性提供set方法
public class User {
public String name;//姓名
public String sex;//性别
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", sex='" + sex + '\'' +
'}';
}
}
第二步
在配置文件applicationContext.xml中进行配置
<!--
name:表示属性的名称,和实体类中对象的属性名称保持一致
value:要给属性赋的值
使用此种注入方式的时候必须给属性提供set方法
-->
<bean id="user" class="com.ctbu.domain.User">
<property name="name" value="大哥大"/>
<property name="sex" value="23"/>
</bean>
第三步
测试类中运行并查看结果
public class SpringTest {
@Test
public void test1(){
//加载配置文件
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
//获取配置的对象,通过配置文件中的id
User user = (User)applicationContext.getBean("user");
System.out.println(user);
}
}
第四步
查看结果:我们并没有通过set方法对属性赋值,但是他们已经有了初始值了