2012-02-09 7 views
0

私は、プロパティCを持つBを持つ多対多を持つモデルAを持っています。以下のように。 BSでのB b.c =いくつかの値が存在する場所として、すべてを選択します。多対多フィールドのどこでHibernateクエリを実行しますか

class A { 
    @ManyToMany 
    List<B> bs; 
} 

class B { 
    @ManyToMany 
    List<A> as; 
    String c; 
} 

このようなクエリを実行する(デタッチ基準を使用して)方法はありますか?そしてもし私がこれをどうやってすることができますか?

答えて

1

私はいくつかのより多くを研究し、私はそれを行う方法を発見しました。関心のある方:

DetachedCriteria.forClass(A.class) 
    .addAlias("bs", "b") 
    .add(Restrictions.eq("b.c", c); 
1

私は、これはトリックを行うべきだと思う:

from A a inner join a.bs b where b.c = ?

+0

そうですね、そういうことは大丈夫です。しかし、DetachedCriteriasでそれを行う方法はありますか? – Razvi

関連する問題