HQL和Criteria查询时,解决卡死的通用方法
方法一:
采用Spring管理session
return this.getHibernateTemplate().executeFind(new HibernateCallback() {
@Override
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
Query query = session.createQuery(hql);
return query.list();
//Criteria criteria = session.createCriteria(XXX.class);
//return criteria.list();
}
});
方法二:
获取session,采用HibernateDAOSupport的releaseSession即可
Session session=getHibernateTemplate().getSessionFactory().openSession();
//HQL
//Criteria
releaseSession(session);