Strona powrotu kryteriów hibernacji i rowcount

Korzystając z kryteriów hibernacji staram się uzyskać paginację, ale problem polega na tym, że przy każdym pobieraniu stron muszę wykonać dwa wywołania db jeden dla wyników, a drugi dla całkowitej liczby rekordów. Czy jest jakiś skuteczny sposób, aby w jednym wywołaniu db uzyskać zarówno dane, jak i zmniejszyć liczbę wywołań db.

 Criteria criteria=session.createCriteria(Student.class);
 criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
 criteria.add(Restrictions.ne("enquiryStatus", ENQUIRY.JOINED));
 criteria.setMaxResults(10);
 criteria.setFirstResult((paginate.getStartIndex()-1)*10);

 criteria.setProjection(Projections.rowCount());
//here i need to fetch total row count and records

questionAnswers(2)

yourAnswerToTheQuestion