Я думаю, что элемент p: dataTable в PrimeFaces делает то, что вы хотите.Он рисует панель разбиения на страницы с семантикой первый / предыдущий / следующий / последний элемент управления.Вот пример для разбивки на страницы.
Что я рекомендую больше всего, так это их режим "загрузки таблиц ленивых данных", когда вы не передаете данные с сервера на клиент, который на самом деле не собираетсябыть отображенным.Таким образом, вы можете обрабатывать источник данных с миллионами записей.Вот пример для отложенной загрузки данных.
Если вам нужна сетка, а не таблица, я думаю, что реализация PrimeFaces p: dataGrid является лучшей вбизнес.К сожалению, мое собственное приложение не использует его, но пример: здесь .