用HibernateTemplate时,发现确实在编写代码上省了不少的事,但是在实际用时,它又没有Query对象那样给出那么多方法,所以有时需要我们自己封装一些:
今天工程刚开头,我封装了两个,估计以后会封装更多。 主要是用回调方法来进行封装。
1.分页:
/**升级getHibernateTemplate:分页操作
* @param hql
HSQL 查询语句
* @param offset
开始取数据的下标
* @param length
读取数据记录数
* @return List
结果集
*/
protected List<Vehicle> fetchByPageBean(final int startIndex, final int pageSize,final String hql) throws Exception {
List list = null;
try {
list = this.getHibernateTemplate().executeFind(
new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException, SQLException {
Query query = session.createQuery(hql);
query.setFirstResult(startIndex);
query.setMaxResults(pageSize);
List<Vehicle> list = query.list();
return list;
}
});
} catch (Exception e) {
throw e;
}
return list;
}
2.根据id删除记录
protected void deleteByVehicleId(final int vehicleId) throws Exception {
try {
this.getHibernateTemplate().executeFind(
new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException, SQLException {
Query q = session.createQuery("delete from Vehicle v where v.id=" + vehicleId );
q.executeUpdate();
return null;
}
});
} catch (Exception e) {
throw e;
}
}
分享到:
相关推荐
GenericHibernateDao 继承 HibernateDao,简单封装 HibernateTemplate 各项功能,简化基于Hibernate Dao 的编写。
hibernateTemplate的常用方法
NULL 博文链接:https://vincent1003.iteye.com/blog/945052
hibernateTemplate常用方法.htm
HibernateTemplate的方法部分使用,还有部分的个人见解,有错的,请指出,谢谢
spring HibernateTemplate汇总
HibernateTemplate的用法总结,我自己整理的,仅供参考
HibernateTemplate的简单示例
HibernateTemplat技术,此文档详细描述了HibernateTemplate的方法及功能说明,并有实例。
对Spring框架中,HibernateTemplate的使用,底层dao中HibernateTemplate的使用以及HibernateCallBack调用等等
关于使用HibernateTemplate
HibernateTemplate 的常规用法.doc HibernateTemplate 的常规用法.doc
Spring整合hibernate(2)之基于HibernateTemplate的整合,jar需要自己添加!
HibernateTemplate源代码
对于Hiberante对数据库种数据删除操作的归纳
HibernateTemplate类的使用
这是一个很好的文件,希望大家从中能找到自己的又用的部分,并且不断的进步
spring hibernatetemplate
JavaWeb开发,Sping框架,才用Hibernate Template进行字段截取,分组统计实现方法。