Spring整合Hibernate 实现DAO组件

为了实现DAO组件,Spring提供了大量的XxxDaoSupport类,这些DAO支持类对于实现DAO组件有很大的帮助,因为这些DAO支持类完成了大量基础性工作。

Spring为Hibernate的DAO提供工具类:HibernateDaoSupport。该类主要提供如下两个方法来简化DAO的实现:

(1)public final HibernateTemplate getHibernateTemplate()

(2)public final void setSessionFactory(SessionFactory sessionFactory)

在继承HibernateDaoSupport的DAO实现里,程序无须理会Hibernate的Session管理,Spring会根据实际的操作,采用“每次事务打开一次session”的策略,自动提高数据库访问的性能。

package com.dao.impl;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.dao.IMyHibernateDaoSupport;

public class MyHibernateDaoSupport extends HibernateDaoSupport implements IMyHibernateDaoSupport {
	
	public void testDao(){
		List list = getHibernateTemplate().find("from NewsInf");
		System.out.println("list.size()="+list.size());
	}
}


-----------------------------------
<bean id="myHibernateDaoSupport" class="com.dao.impl.MyHibernateDaoSupport">
		<property name="hibernateTemplate" ref="hibernateTemplate"></property>
	</bean>

猜你喜欢

转载自panyongzheng.iteye.com/blog/1106387