#java #mysql #spring-boot
#java #mysql #spring-boot
Вопрос:
Я работаю над нумерацией страниц с использованием Spring boot. Я пытаюсь получить общее количество результатов из запроса entity Manager для разбивки на страницы. Для этого я получаю maxresults для отображения из запроса, но как я могу получить общее количество результатов.Пожалуйста, скажите мне, что я новичок в enity manager.
@Override
public List<User> getsearchresults(String result) {
String query = "FROM User WHERE (education = :education) OR (city = :city)";
return em
.createQuery(query,User.class)
.setParameter("education",education)
.setParameter("city",city)
.setMaxResults(5)
.getResultList();
}
вот как я пишу запрос, который возвращает результаты, но мне нужно общее количество результатов.Как я могу это сделать, пожалуйста, помогите мне.
Комментарии:
1. Эта информация теряется, когда вы
setMaxResults
. Не могли бы вы не сделать этого, а затем получить все элементы в виде объектов вList
, тогда у вас есть count (List.size()
), а затем отфильтровать его в коде?2. @tomgeraghty3 я пишу 2 функции с одним и тем же запросом дважды, одну с maxresults без maxresults, чтобы получить размер списка. я знаю, что это не лучший способ, но для меня это сработало. спасибо за подсказку.