关于 spring的内部bean
首先多谢各位帮助
<bean id="userService" class="com.test.bean.UserServiceBean">
<property name="userDAO" ref="userDAO"/>
</bean>
和
<bean id="userService" class="com.test.bean.UserServiceBean">
<property name="userDAO">
<bean class="com.test.dao.impl.UserDAOImpl"></bean>
</property>
</bean>
其中
public class UserDAOImpl implements UserDAO {
private HibernateTemplate hibernateTemplate;
public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
this.hibernateTemplate = hibernateTemplate;
}
public List findUserList() {
System.out.println(hibernateTemplate);
List list = null;
try{
list = hibernateTemplate.find("From UserDTO");
}catch(Exception e){
e.printStackTrace();
}finally{
hibernateTemplate.clear();
}
return list;
}
现在想问的是 为什么 第一种bean的写法可以正确获取 hibernateTemplate
而第二种bean的写法获取的hibernateTemplate为null
不解啊。。
多谢了
------解决方案--------------------
因为sessionFactory被你注入到ref="userDAO"的userDAO这个bean里的。所以必须要ref你声明的bean,也就是配置文件里面的userDAO
------解决方案--------------------