HibernateDaoSupport

王朝百科·作者佚名  2010-03-05
窄屏简体版  字體: |||超大  

Spring的Hibernate ORM 框架带来了方便的HibernateDaoSupport类,你的DAO类可以继承它:

public class StudentDaoHibernate extends HibernateDaoSupport implements StudentDao{

.................

}

如果你选择这种设计,就需要织入SessionFactory--HibernateDaoSupport包含这个属性.这个类提供一个方便的方法

getHibernateTemplate(); 很容易就能得到HibernateTemplate的一个实例.它也有getSession()和closeSessionIfNecessary()方法,以便于你应为某些原因而不使用HibernateTempate的情况下执行Hibernate操作。

HibernateDaoSupport提供了基于AOP事务的自动处理,程序员完全可以不用理会事务的开始与提交。在JDBC中一个Connection对象使用一个事务,那么在Hibernate中一个事务肯定要关联一个SessionFactory了,然而这个SessionFactory却没有在DAO中体现。其实主要的原因是HibernateDaoSupport类已经默默地做了封装的工作,它用一个setSessionFactory方法将SessionFactory进行注入,所以继承自HibernateDaoSupport类的DAO都会具有SessionFactory的属性,从而可以通过SessionFactory创建Session实例操作数据库

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航