數(shù)據(jù)分頁(yè)顯示,是很多B/S系統(tǒng)會(huì)遇到的問(wèn)題。現(xiàn)在大多數(shù)主流數(shù)據(jù)庫(kù)都提供了數(shù)據(jù)部分讀取機(jī)制,而對(duì)于某些沒(méi)有提供相應(yīng)機(jī)制的數(shù)據(jù)而言,Hibernate也通過(guò)其它途徑實(shí)現(xiàn)了分頁(yè),如通過(guò)Scrollable ResultSet,如果JDBC不支持Scrollable ResultSet,Hibernate也會(huì)自動(dòng)通過(guò)ResultSet的next方法進(jìn)行記錄定位。Hibernate的Criteria、Query等接口提供了一致的方法設(shè)定分頁(yè)范圍。下面是書(shū)中的例子:
Criteria criteria = session.createCriteria(TUser.class);
Criteria.add(Expression.eq("age", "20"));
//從檢索結(jié)果中獲取第100條記錄開(kāi)始的20條記錄
criteria.setFirstResult(100);
criteria.setFetchSize(20); 不過(guò),我在測(cè)試的時(shí)候總是不能夠正常工作,把setFetchSize方法換成setMaxResults方法才行。換成最新的mysql-connector-java-3.1.10-bin-g.jar驅(qū)動(dòng)也是一樣。
posted on 2005-07-26 18:12
小米 閱讀(5554)
評(píng)論(4) 編輯 收藏 所屬分類:
Hibernate