Spring为Hibernate的DAO提供工具类:HibernateDaoSupport。该类主要提供了两个方法:
public final HibernateTemplate getHibernateTemplate()
public final void setSessionFactory(SessionFactory sessionFactory)
其中,setSessionFactory方法接收来自Spring的applicationContext的依赖注入,接收了配置在Spring中的SessionFactory实例,getHibernateTemplate方法用来利用刚才的SessionFactory生成Session,再生成HibernateTemplate来完成数据库的访问。
典型的继承HibernateDaoSupport的DAO代码如下:
public class UserDAOImpl extends HibernateDaoSupport implements UserDAO{
public void save(Users transientInstance) {
log.debug("saving Users instance");
try {
getHibernateTemplate().save(transientInstance);
log.debug("save successful");
} catch (RuntimeException re) {
log.error("save failed", re);
throw re;
}
}
………………
}
实际上,DAO的实现依然借助了HibernateTemplate的模板访问方式,只是,HibernateDaoSupport将依赖注入SessionFactory的工作已经完成,获取HibernateTemplate的工作也已经完成。注意,这种方法须在Spring的配置文件中配置SessionFactory。
在继承HibrnateDaoSupport的DAO实现里,Hibernate Session的管理完全不需要Hibernate代码打开,而由Spring来管理。Spring会根据实际的操作,采用“每次事务打开一次session”的策略,自动提高数据库访问的性能。
分享到:
相关推荐
### hibernateDaoSupport类的运用实例 #### 一、引言 `hibernateDaoSupport`是Spring框架中提供的一种支持Hibernate操作的基类。它主要用于简化Hibernate与Spring集成过程中的编码工作,使得开发人员能够更加专注于...
HibernateDaoSupport 类的jar HibernateDao 的jar
以上就是关于Spring与Hibernate集成的关键知识点,包括基本配置、HibernateDaoSupport与UserDaoHibernateImpl的区别,以及Spring+Struts+Hibernate集成的具体实现细节。这些内容有助于更好地理解和运用Spring框架与...
Spring hibernate3. HibernateDaoSupport 源码
例如,我们可以自定义一个DAO类,继承`HibernateDaoSupport`,然后利用`@Autowired`来注入Service层的bean,实现业务逻辑和数据访问的解耦: ```java @Repository public class CustomUserDao extends ...
当Spring与Hibernate结合时,Spring提供了`HibernateDaoSupport`类,它为基于Hibernate的DAO(数据访问对象)提供了一种简单而强大的支持。本文将深入探讨`HibernateDaoSupport`的原理、用法以及它如何简化开发工作...
为了实现分页功能,我们首先定义了一个名为`MyHibernateDaoSupport`的类,该类继承自`HibernateDaoSupport`。`HibernateDaoSupport`类本身提供了很多便利的方法,如执行Hibernate操作等。接下来我们将在这个类中实现...
`HibernateDaoSupport`是Spring提供的一类辅助类,它提供了与Hibernate SessionFactory的连接,简化了Hibernate的使用。首先,我们需要创建一个基础的DAO接口,然后创建其实现类并继承`HibernateDaoSupport`。例如:...
`HibernateDaoSupport`是Spring框架中为Hibernate提供的一个辅助类,用于简化DAO(数据访问对象)层的开发。本文将深入探讨`HibernateDaoSupport`的二次封装,以及如何通过封装来实现快速的统计、查询、修改和删除...
这些类通过继承`HibernateDaoSupport`或类似类来实现数据访问逻辑。这样做的好处在于,具体DAO类只需要关注业务逻辑的实现,而不需要关心底层框架的具体实现细节。 3. **封装框架依赖**:通过`HibernateDaoSupport`...
HibernateDaoSupport 是 Spring 为 Hibernate DAO 层提供的辅助类,它的主要作用是为 DAO 类提供了一个方便的基类。HibernateDaoSupport 提供了两个核心方法: 1. `public final HibernateTemplate ...
【HibernateDaoSupport】是Spring框架中的一个抽象类,主要用于简化Hibernate的数据访问操作,它为DAO层提供了方便的事务管理和Session管理。这个类是Spring与Hibernate集成的重要组件,尤其对于初学者来说,理解其...
其中,`HibernateDaoSupport`和`JdbcDaoSupport`是两种非常常用的支持类。 **HibernateDaoSupport**主要用于整合Hibernate框架,提供了一种更加简洁的方式来使用Hibernate进行数据库操作。而**JdbcDaoSupport**则...
3. **QueryResult.java** - 这个类可能是查询结果的封装,除了包含查询到的数据外,还可能包含查询的相关信息,如查询条件、受影响的行数或者查询执行时间等。在JPA和Hibernate中,可以直接返回查询结果集,但如果...
BaseDAO通常是通过继承HibernateDaoSupport类实现的。 BaseDAO的主要功能包括: 1. 加载指定ID的持久化对象:通过loadById方法,根据指定的类和ID加载对应的持久化对象。 2. 加载满足条件的持久化对象:通过load...
* 继承HibernateDaoSupport类,使用HibernateTemplate来持久化,HibernateTemplate是 Hibernate Session的轻量级封装 * 默认情况下运行期异常才会回滚(包括继承了RuntimeException子类),普通异常是不会滚的 ...
要HibernateDaoSupport类时,必须加的包
本文将深入探讨如何在MyEclipse 2014环境中利用Hibernate 3这一强大的ORM(对象关系映射)框架,生成数据库实体类和XML映射文件。这将帮助开发者有效地将Java对象与数据库表进行绑定,实现数据的透明操作。 首先,...
使用HibernateTemplate时,你需要继承Spring的HibernateDaoSupport类,并注入HibernateTemplate实例。 1. **配置HibernateTemplate** 首先,要在Spring配置文件中声明并配置HibernateTemplate,设置SessionFactory...
(2) 新建DAO层实现类(该类要实现DAO层接口,继承HibernateDaoSupport类)。 (3) 在Spring配置文件中增加该DAO层实现类的定义,并需要依赖注入一个SessionFactory bean的引用。 7、 开发Service