Hibernate查询EASY回答

时间:2013-01-23 21:39:53

标签: hibernate entity criteria

我正在进行休眠。 我有一个这样的@Entity:

实体A:

int category; //1 2 or 3

List<B> B_list;

实体B:

String word;

现在我要做的是给出一个A和一个单词的类别,我想要返回与该类别匹配的所有A,并且在其B_list中有一个B,其单词等于参数单词。

这就是我所拥有的:

public List<A> getAs(int category,String word){
Criteria crit = session.createCriteria(A.class);
    crit.add(Restrictions.eq("category",category));

        crit.add(Restrictions.//something to look for B);

        List<A> cats = crit.list();
        return cats;
 }

我有我的会议,所有的顺序:)谢谢!

1 个答案:

答案 0 :(得分:0)

我没有使用条件查询,但如果它是hql或jpql,我只会加入B和表达式。即

From A a join a.b_list b where a.category = : category and a.word = :word and b.<field name> = :word

换句话说,你需要在b_list上加入B,你可以引用它的字段。

希望指出你正确的方向。

编辑:您也可以使用条件查询进行加入using JPA 2Hibernate