Я создал DetachedCriteria, который извлекает состояния, для которых isApproved и isPublished установлены в true . Это определяется следующим образом:
DetachedCriteria activePublishedCriteria = DetachedCriteria.forClass(Estate.class)
.add(Restrictions.eq("isApproved", true))
.add(Restrictions.eq("isPublished", true))
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
Я хотел бы повторно использовать этот критерий в некоторых запросах. В этом случае я хотел бы заменить ограничения isApproved и isPublished на DetachedCriteria
Criteria criteria = getSession().createCriteria(Estate.class)
.createAlias("city", "c")
.add(Restrictions.eq("c.id", cityID))
// the following 2 lines should use the DetachedCriteria
.add(Restrictions.eq("isApproved", true))
.add(Restrictions.eq("isPublished", true))
.setProjection(Projections.rowCount());
return (Integer) criteria.list().get(0);
Есть ли способ сделать это? Пытался использовать
.add(Subqueries.geAll(....
Но не может заставить его работать должным образом. Я не мог найти надлежащую документацию по подзапросам в Hibernate. Советы приветствуются.