总结Spring Set注入方式及对property标签的理解
package com.springdemo.action;
public class SpringAction {
//注入对象springDao
private SpringDao springDao;
//一定要写被注入对象的set方法
public void setSpringDao(SpringDao springDao) {
this.springDao = springDao;
}
}
<!--配置bean,配置后该类由spring管理-->
<bean name="springAction" class="com.bless.springdemo.action.SpringAction">
<!--(1)依赖注入,配置当前类中相应的属性-->
<property name="springDao" ref="springDao"></property>
</bean>
<bean name="springDao" class="com.springdemo.dao.impl.SpringDaoImpl"></bean>
- 注意:通过Spring创建的对象默认是单例的,如果需要创建多实例对象可以在标签后面添加一个属性:
<bean name="..." class="..." scope="prototype">
- 此外:对property name ref属性的理解:
<bean id="u" class="com.bjsxt.dao.impl.UserDAOImpl"></bean>
<bean id="userService" class="com.bjsxt.service.UserService">
<property name="userDAO" ref="u" />
</bean>
- 在com.bjsxt.service.UserService这个类中有个名为 userDAO 的属性,它的类型是com.bjsxt.dao.impl.UserDAO, 在spring初始化的时候把u 注入到UserService类中,相当于
class UserService{
UserDAO userDAO = new UserDAOImpl();
}