我想在一个宁静的网络服务中使用分页。我发现了很多代码如何在两个硬编码值(例如10-20之间)之间获得表的结果,但我需要设置起始索引稍微不同。我想从一个表中选择一个id之后的20行。 例如:
rowNo id
1 22
2 56
3 98
4 24
5 75
6 27
7 59
8 45
9 32
10 85
现在我想在id 24之后选择5个项目。所以结果表应如下所示:
rowNo id
1 75
2 27
3 59
4 45
5 32
有人有想法吗?
答案 0 :(得分:0)
尝试使用该构建:
public List(int first, int pageSize) {
CriteriaBuilder...
CriteriaQuery....
Predicates.....
TypedQuery<T> typedQuery = entitymanager.createQuery(CriteriaQuery);
if (pageSize >= 0){
typedQuery.setMaxResults(pageSize);
}
if (first >= 0){
typedQuery.setFirstResult(first);
}
return typedQuery.getResultList();
}