What is the best way to express the query "exists" with hibernation criteria?
In my project, people use counting counts to check if any line matches the criteria (count> 0). To be more efficient, I prefer to use the existing option.
Here is the basic code for calculating by criteria:
public int count(final DetachedCriteria criteria) throws DataAccessException { Object countResult = executeWithNativeSession(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException { Criteria executableCriteria = criteria.getExecutableCriteria(session); executableCriteria.setProjection(Projections.rowCount()); prepareCriteria(executableCriteria); return executableCriteria.uniqueResult(); } }); if (countResult == null) { countResult = 0; } return (Integer) countResult; }
source share