Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public List findAll(Class type, Integer pageNumber, Integer pageSize) {
- CriteriaBuilder criteriaBuilder = this.em.getCriteriaBuilder();
- CriteriaQuery<Long> countQuery = criteriaBuilder
- .createQuery(Long.class);
- countQuery.select(criteriaBuilder.count(countQuery.from(type)));
- Long count = this.em.createQuery(countQuery).getSingleResult();
- CriteriaQuery<Class> criteriaQuery = criteriaBuilder.createQuery(type);
- Root<Class> from = criteriaQuery.from(type);
- CriteriaQuery<Class> select = criteriaQuery.select(from);
- TypedQuery<Class> typedQuery = this.em .createQuery(select);
- while (pageNumber < count.intValue()) {
- typedQuery.setFirstResult(pageNumber - 1);
- typedQuery.setMaxResults(pageSize);
- System.out.println("Current page: " + typedQuery.getResultList());
- pageNumber += pageSize;
- }
- return null;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement