0
我有一個分頁HQL查詢從一個表,狀態NEW獲取記錄或失敗:Hibernate的分頁與更新記錄
public List<Integer> getPendingItems(int channelId, int start, int pageSize) {
Query query = sessionFactory.getCurrentSession().createQuery(
"select cit.id
from Item cit
where cit.channel.id = :channelId and (cit.statusCode = 'NEW' or cit.statusCode = 'FAILED')");
query.setParameter("channelId", channelId);
query.setMaxResults(pageSize);
query.setFirstResult(start);
return query.list();
}
此查詢返回由服務處理的初始記錄,但問題是,記錄的statusCode會更新爲'SUCCESS'或'FAILED'。所以下一次,分頁就是折騰,因爲查詢不會再產生相同的結果集。
任何想法如何解決這個問題?