私がやろうとしているのは、入力された基準に適合する行をカウントすることです (ルックアップに時間がかかることをユーザーに警告する必要があります x rows * (estimated time for one row)
。私のコードは次のようになります:
CriteriaBuilder qb = em.getCriteriaBuilder();
CriteriaQuery<Long> criteria = qb.createQuery(Long.class);
Root<TrackingDAO> p = criteria.from(TrackingDAO.class);
criteria.select(qb.count(criteria
.from(TrackingDAO.class)));
/* my stuff with criteria */
TypedQuery<Long> q = em.createQuery(criteria);
setCounterOfLookUpResults(q.getSingleResult());
結果が得られるまで、クラスは正常に機能しています。たとえば、 56432 のように完全に奇妙で、たとえば 430 を期待しています。
データベースを「ping」して、その行をフェッチする前に何行提供されるかを尋ねる方法を教えてもらえますか?