Hibernate 如何使用criteria Api检索集合属性

Hibernate 如何使用criteria Api检索集合属性,hibernate,criteria,Hibernate,Criteria,我想使用条件检索集合属性 public class A { private Collection<B> property // getters and setters } public class B { private int status // getters and setters } 很明显,这段代码不起作用,我只是想证明我的意图。我知道如何使用HQL实现这一点,但我必须使用Criter

我想使用条件检索集合属性

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

很明显,这段代码不起作用,我只是想证明我的意图。我知道如何使用HQL实现这一点,但我必须使用CriteriaAPI。我的目标是使用标准吗?

这个解决方案有什么问题吗

Criteria cr = getSession().createCriteria(B.class);
 cr.add(Restrictions.eq("status", status));
 cr.list(); 

不幸的是,我想用Hibernate标准实现的目标是不可能的。如果有人需要类似的东西,您应该创建一个namedQuery,尽可能完整,或者只使用hql


Peter

我需要A.property集合,而不仅仅是数据库中具有特定状态的所有B实例。我需要所有B连接到A,并具有提供的状态。不幸的是,B没有提到A(如果是这样的话,我不会问任何问题),只有A 0..*B连接,Peter
Criteria cr = getSession().createCriteria(B.class);
 cr.add(Restrictions.eq("status", status));
 cr.list();