私は自然に、結果セットが非常に大きいクエリのパフォーマンスを向上させるためにページ分割を理解しています。Hibernateのページ番号付け - 結果の次のバッチを取得する方法?
正しい量を正常に返すpaginatedListメソッドが実装されています。しかし、それはMySQLのLIMIT
またはSQLServerのTOP
節の多くのようです。
@SuppressWarnings("unchecked")
public List<T> paginatedList(int pageSize) {
Criteria criteria = getSession().createCriteria(persistentClass);
criteria.setFirstResult(0);
criteria.setMaxResults(pageSize);
return (List<T>) criteria.list();
}
そして、私はこのように呼び出す:
方法は、このように実装されている
@Override
public List<AlertLog> findAll() {
return super.paginatedList(1000);
}
この実装は0を返し、実行時に、取得する方法を
1000に結果1001位から2000位までなど?
最初の結果を1000に設定します。 –
はい、アイデア(および質問は編集されました)が実行されている次のバッチを取得します。 – gtludwig