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