Spring注入对象类型属性
程序员文章站
2022-03-05 13:53:00
...
1. 创建一个service类
public class UserService {
//1. 定义一个dao类型的属性
private UserDao userDao;
//2. 生成set方法
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
public void add(){
System.out.println("service...........");
//在service当中得到dao这个类的对象,才能够调用dao当中的方法。
//UserDao dao = new UserDao();
//dao.add();
userDao.add();
}
}
2. 创建一个Dao类
public class UserDao {
public void add(){
System.out.println("dao...........");
}
}
3. 为了在Service类当中使用Dao对象的方法
4. 编辑配置文件
<bean>
<bean id="userDao" class="cn.itcast.ioc.UserDao"></bean>
<bean id="userService" class="cn.itcast.ioc.UserService">
<!-- 注入Dao对象
name属性值,service类里面的属性的名称。
不要写value属性,因为是对象。
写ref属性。dao配置bean标签当中id值。
-->
<property name="userDao" ref="userDao"></property>
</bean>
</beans>
5. 进行测试
public class TestIOC {
@Test
public void testUser(){
//1. 加载spring的配置文件,根据配置创建对象。
ApplicationContext context =
new ClassPathXmlApplicationContext("bean1.xml");
//2. 得到配置创建的对象。
UserService userService=(UserService)context.getBean("userService");
userService.add();
}
}