setFirstResult 是起始数据,setMaxResults是查询显示的数据。
如果放在分页程序里边 setFirstResult的值应该是 (当前页面-1)X每页条数,setMaxResults 就是每页的条数了。
关于setMaxResults 和 setFetchSize 的区别:我的理解是
setMaxResults 是用来配合数据库生成sql的,在sql里就控制查询的记录数目 setFetchSize是控制查询结果的,可能sql已经查询出100条,但是hibernate只取前10条放到返回的List里。 public List getList ( ) throws HibernateException { Session session = HibernateUtil. currentSession ( ); Transaction tx = session. beginTransaction ( ); Query query = session. createQuery ( "from Table" ); query. setFirstResult ( 0 ); query. setMaxResults ( 10 ); List list = query. list ( ); tx. commit ( ); HibernateUtil. closeSession ( ); return list; }