【Hibernate】HibernateCallback总结

HibernateCallback总结

HibernateTemplate提供了非常多的常用方法来 完成数据库的基本操作,使得持久层访问模板化 。只要创建HibernateTemplate实例后,注入一 个SessionFactory的引用就可以了,而无需手动 创建sessionFactory,从而可以更加智能的管理 Hibernate的Session,避免了对于try/catch的 大量使用。

HibernateTemplate操作数据库的基本方法

对于Hibernate的复杂用法HibernateCallBack, HibernateTemplate也提供了一种更加灵活的方 式来操作数据库。通过这种方式可以完全使用 Hibernate的操作方式。

HibernateTemplate的灵活使用方式是通过如下方式完成的:
这里写图片描述

这三个方法都需要HibernateCallBack实例, HibernateCallBack实例可以在任何有效的数据 库访问中使用。开发者通过HibernateCallBack 可以完全使用Hibernate灵活的方式来访问数据 库,解决Spring封装Hibernate后导致的灵活性 不足的缺陷。

HibernateCallback是一个接口,该接口只有一 个方法doInHibernate(org.hibernate.Session session), 该方法只有一个参数Session。

通常,程序中采用实现HibernateCallback的匿 名内部类来获取HibernateCallback的实例, 方 法doInHibernate的方法体就是Spring执行的持 久化操作。

如下为一个HibernateCallBack实现的分页查询工具类

/**
 * HibernateCallBack实现分页查询
 * @author lmb
 *
 */
import java.sql.SQLException;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

public class HibernateCall
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值