DataNucleus JPA реализует разбиение на страницы с использованием функций хранилища данных, где это возможно ... HSQL, Derby, Postgresql и т. Д. Имеют ключевые слова LIMIT / OFFSET. Oracle, DB2, MSSQL имеют ключевые слова в стиле ROWCURSOR.
Hibernate делает то же самое, AFAIK