getHibernateTemplate().find(hql);
还有一个是用query:
Query query = sessionFactory.getCurrentSession().createQuery(hql);
这两种增删改查的方法有何区别?
------解决方案--------------------
Hibernate中的find是根据主键首先去缓存中查找,找到就直接返回,找不到就接着去数据库中查找;
而createQuery直接就去数据库中查找,不管缓存中是不是已经存在了;
------解决方案--------------------
//queryString HQL语句 pageSize每页显示多少条 page当前所在也
public List<Object> queryListObjectAllForPage(String queryString,int pageSize,int page){
Session session = this.getHibernateTemplate().getSessionFactory().openSession();
Query query = session.createQuery(queryString);
query.setFirstResult((page-1)*pageSize);
query.setMaxResults(pageSize);
List<Object> list= (List<Object>)query.list();
session.close();
return list;
}