Как я могу получить свойство коллекции, используя критерии Api - PullRequest
0 голосов
/ 31 августа 2010

Я хочу получить свойство коллекции, используя критерии

   public class A {  
       private Collection<B> property  
       // getters and setters
   }  
   public class B {
      private int status
      // getters and setters
   }

Код моего критерия выглядит следующим образом:

Criteria cr = getSession().createCriteria(A.class)     
cr.createAlias("property", "prop")
cr.add(Restrictions.eq("prop.status", status));
cr.setProjection(Projections.property("prop"));
cr.list();

Очевидно, этот код не работает, я хотел просто продемонстрироватьмои намеренияЯ знаю, как добиться этого с помощью HQL, но я должен использовать Criteria API.То, к чему я стремлюсь, возможно, даже используя Критерии?

Ответы [ 2 ]

0 голосов
/ 25 января 2011

К сожалению, то, чего я хочу достичь, невозможно с Hibernate Criteria.Если кому-то нужно что-то подобное, вы должны создать namedQuery, как бы вам этого ни хотелось, или просто использовать hql.

Питер

0 голосов
/ 31 августа 2010

Что не так с этим решением?

Criteria cr = getSession().createCriteria(B.class);
 cr.add(Restrictions.eq("status", status));
 cr.list(); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...