1、Criteria
setFetchSize實際上與分頁操作并沒有關系,它的作用是在查詢中進行分批數據返回,其中的值就是每次分批查詢的記錄數,主要是為了提高查詢性能的.
舉個例子來說:
如果你這次查詢一共是50條結果,如果你這里設置了setFetchSize(5);則JDBC會5條5條的將數據返回給Java對象,而如果不設置,則是一起返回.
這個方法在java.sql.Statement和ResultSet中也有,功能是一樣的,你可以參考一下.
如果要分頁還是要使用setMaxResults來完成.
2、hql查詢
ScrollableResults rs=session.createQuery("from Customer c").scroll;
//游標移動到結果集的第一行
rs.first();
Object[] o=rs.get();
Customer customer=(Customer)o[0];//獲取對象數組的第一個對象
System.out.println(customer.getId());
rs.scroll(2);//游標從當前的位置移動2行
Customer customer=(Customer)rs.get(0);//獲取當前行中的第一個字段,為Customer對象
System.out.println(customer.getId());
rs.close();
轉自:http://zhidao.baidu.com/question/105546781.html
http://m.blog.csdn.net/blog/yu422560654/7277568