1

結果をフェッチするためにHibernate基準を使用しています。ここで、永続クラスのデモデザインを提供しました。

Class A{
private B b;
}
Class B{
private C c;
}
Class C{
private Long val;
}

これらが休止状態の永続クラスであると仮定します。データベースを使用したマッピングのすべてのアノテーションを記述しているわけではありません。

今私の問題は、クラスCのvalプロパティの値に従ってクラスAの結果を取得したいということです。

私はそれを使用してフェッチしようとしました、

Criteria c = Restrictions.eq("b.c.val", value);
List l = c.list;

プロパティを解決できなかったことを示しています。私は検索して、基準がこれほどの深さまで機能しないことを知りました。HQLに移行したくありません。何か案が??

4

1 に答える 1

4
Criteria c = session.createCriteria(A.class)
    .createCriteria("b")
    .createCriteria("c")
    .add(Restrictions.eq("val", value));

List l = c.list;
于 2012-04-07T11:26:37.793 に答える