注入对象类型属性(重点)
实现思想:
1、创建service类和dao类
2、在service得到dao对象
(以service中内嵌dao为例)
具体实现过程:
- 1)在service中把dao作为类型属性
- 2)生成dao类型属性的set方法
- 3)配置文件中完成注册
UserService类:
public class UserService{
//定义dao类型属性
private UserDao userDao;
//生成set方法
public void setUserDao(UserDao userDao){
this.userDao = userDao;
}
public void add(){
System.out.println("service");
//不使用Spring框架,直接创建UserDao对象
//UserDao userDao = new UserDao();
//userDao.add();
userDao.add();
}
}
UserDao类:
public class UserDao{
public void add(){
System.out.println("dao");
}
}
applicationContext.xml配置文件:
<!-- 注入对象类型的属性 -->
<!-- 配置service和dao的对象 -->
<bean id="userDao" class="UserDao全路径"></bean>
<bean id="userService" class="UserService全路径">
<!-- 注入dao对象 name:service类中属性名称 ref属性:dao配置bean标签中的id值 -->
<property name="userDao" ref="userDao"></property>
</bean>
测试方法:
public void testUser(){
//1、加载spring配置文件,根据创建对象
ApplicationContext context =
new ClassPathXmlApplicationContext("applicationContext.xml");
//2、得到配置创建对象
UserService userService = (UserService) context.getBean("userService");
userService.add(); //验证是否可以得到UserService对象
}
注:
本文是我自学笔记总结,不足之处,还望指正,谢谢。