2008-09-18 5 views
2

Я пишу отчет о контрольном журнале, и мне нужно отобразить его в .jsp. Каков «лучший» способ получить данные из базы данных на экран?Каков наилучший способ представления данных из очень большого набора результатов?

Мы используем Spring для инъекций зависимостей, объектов доступа к данным и спящего режима. Я могу использовать hibernate или прямой jdbc для этого отчета.

Если я загружаю все записи в память, у меня заканчивается память.

Любые идеи, которые не связаны с запуском запроса в jsp?

ответ

6

Похоже, что это естественное место, чтобы использовать нумерацию страниц ваших результатов Hibernate - выполнить запрос на уровне Servlet и постраничной результаты аналогично тому, как этот человек описывает:

http://blog.hibernate.org/Bloggers/Everyone/Year/2004/Month/08/Day/14#pagination

Это самый простой способ реализации Hibernate pagination, который я видел ...

+0

Мне это нравится, спасибо за ссылку! – 18Rabbit 2008-09-18 19:23:03

1

Просто используйте пейджинг и загружайте только определенное количество строк на странице.

2

Display Tag Library очень хорош при представлении разбиенных на страницы наборов результатов в сервлетах или портлетах. Но он обычно работает со всем списком, загруженным в память. Таким образом, вам придется немного поработать над тем, чтобы он работал с разбитыми на страницы наборами результатов, реализуя интерфейс org.displaytag.pagination.PaginatedList. На веб-сайте Дисплей есть tutorial. В учебнике не так много, но повторное внедрение интерфейса довольно просто.

1

Другой способ сделать это - использовать прокрутку() для потока по одной строке в то время.

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