Я хотел бы использовать разбиение на страницы в спокойной веб-службе. Я нашел много кода, как получить результаты таблицы между двумя жестко закодированными значениями (например, между 10-20), но мне нужно установить начальный индекс немного иначе. Я хочу выбрать из таблицы 20 строк после определенного идентификатора. Пример:
rowNo id
1 22
2 56
3 98
4 24
5 75
6 27
7 59
8 45
9 32
10 85
теперь я хочу выбрать 5 элементов после id 24. Таким образом, таблица результатов должна выглядеть так:
rowNo id
1 75
2 27
3 59
4 45
5 32
Любая идея?
попытайтесь использовать это построение:
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();
}