2010-10-21 2 views
1

Набор данных, который я показываю с помощью PageableListView, может стать очень большим, и сохранение всего набора данных в качестве модели будет очень неэффективным. Можно ли сначала загружать только набор идентификаторов, а затем загружать только объекты, которые должны отображаться на текущей странице? Я использую Wicket + Spring + Hibernate/JPA. Или есть лучший подход к поисковому вызову в этом случае?Загрузка PageListView и набора данных

ответ

2

Обычный способ справиться с этим (по крайней мере для меня) был бы выполнить:

  • первого запрос для подсчета элементов и вывести количество страниц для отображения
  • последующих запросов с использованием Query#setFirstResult(int) и Query#setMaxResults(int) для каждой страницы.

В Wicket, JPA, GlassFish and Java Derby or MySQL, автор показывает, как именно реализовать этот подход с использованием Wicket и DataView вместо PageableListView (пример кода прилагается).

+1

+1: В основном ответ заключается в использовании DataView вместо VableListView, но эта запись в блоге действительно объясняет это хорошо. –

+0

@ Don Спасибо, Дон, ты прав, и я уточнил этот момент в своем ответе. –

Смежные вопросы