Spring整合hibernate(2)之基于HibernateDaoSupport的整合
Spring集成hibernate3和4有一定的区别,目前基本都在使用3,所以此处内容以3为基础;
此处说明:
Spring集成hibernate3和4有一定的区别,目前基本都在使用3,所以此处内容以3为基础;
下面我们用基于HibernateDaoSupport的方式整合。
在文章Spring整合hibernate(2)之基于HibernateTemplate的整合的基础上我们修改BaseDao的代码即可完成基于HibernateDaoSupport的整合
package org.oms.spring.dao;
import javax.annotation.Resource;
import org.hibernate.SessionFactory;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
/**
* 父类的setSessionFactory是 final 型的,所以我们不能override此方法
* 因此需要修改方法名称,此处使用setSuperSessionFactory()
* @author sunlight
*
*/
public class BaseDao extends HibernateDaoSupport {
@Resource(name="sessionFactory")
public void setSuperSessionFactory(SessionFactory sessionFactory) {
super.setSessionFactory(sessionFactory);
}
}
此处说明:
也可以使用XML的方式注入SessionFactory
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory" />
</bean>