اینترفیس Query دو متد setFirstResult و setMaxResults دارد که با استفاده از آنها می توان یک query را صفحه بندی (Pagination) کرد.
متد setFirstResult یک عدد از نوع int می گیرد که مشخص کننده اندیس شروع صفحه است و متد setMaxResults نیز یک عدد از نوع int می گیرد تعداد رکورد هایی که از اندیس شروع قرار است در نتیجه باشند را مشخص می کند.
Query query = entityManager.createQuery("From Foo");
int pageNumber = 1;
int pageSize = 10;
query.setFirstResult((pageNumber-1) * pageSize);
query.setMaxResults(pageSize);
List <Foo> fooList = query.getResultList();