首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Hibernate 自定义查询卡死状况解决

2012-07-01 
Hibernate 自定义查询卡死情况解决??? 我们使用hibernate查询的时候经常会遇到多查询几次卡死的问题,其实

Hibernate 自定义查询卡死情况解决

??? 我们使用hibernate查询的时候经常会遇到多查询几次卡死的问题,其实这里主要是session不够用了,当每查询一次时就会创建一个session 如下面的一个简单分页查询

public List findPageService(int pageNow,int pageSize){ String hql="。。。。。。。。。。。。。";Session session=getHibernateTemplate().getSessionFactory().openSession();Query q= session.createQuery(hql);int first=(pageNow-1)*pageSize;q.setFirstResult(first);q.setMaxResults(pageSize);List list= q.list(); super.releaseSession(session); return list;}

?

注意:如果有多对一关系的话这里我们需要设置<many-to-one>里的lazy属性为false

还有一种方法是用sping管理session方法

getHibernateTemplate().executeFind()包住查询代码就OK了,spring会自动插入关闭当前session的代码


热点排行