JPA/Hiberante | Pagination
От: MV5  
Дата: 29.05.08 08:57
Оценка:
Объясните пожалуйста как работает пэйджинг в Хайбернейте?

Вот пример
есть большой набор данных, причём получаться он в результате сложного SQL/HQL/JPQL запроса, для которого нужно сделать постраничный вывовод.

С Хайбернейтом работаю через JPA:

Query q = em.createQuery("select from...");
q.setFirstResult(900000);
q.setMaxResults(10);


0      row1 row2... rowN
...
900000 row1 row2... rowN \
900001 row1 row2... rowN |
...                      | данные нужные для страницы
900009 row1 row2... rowN |
900010 row1 row2... rowN /
...
100000 row1 row2... rowN



Предполагатся использование Сайбейса — там LIMIT X, Y как в Майэскуэле нет.
Как же это тогда работает?

Для субд эти инструкции будут одинаково тяжёлыми или нет?

Query q = em.createQuery("select from...");
q.setFirstResult(900000);
q.setMaxResults(10);


Query q = em.createQuery("select from...");
q.setFirstResult(1);
q.setMaxResults(10);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.