2010-11-10 45 views
2

我有一個標準和對象之間的關係問題。 我提出一個簡單的方案之前:Java:與標準的對象關係(休眠)

我有2個物體:

A是父 B是在父鏈接子。

我知道如何創建一個查詢,有B,其中A的限制:

Criteria criteria = this.getSession().createCriteria(B.class); 
criteria.add(Property.forName("a.name").eq("test")); 

但我的問題是下一個:

如何檢索與B的restricition所有A對象之間沒有直接的聯繫A在B?

感謝您的幫助。

回答

0

如果您的對象圖中沒有A和B之間的直接鏈接,那麼執行所需操作的唯一方法就是在條件中創建自定義SQL查詢(或HQL)。

類似

criteria.add (Restrictions.sqlRestriction("b.parent_id = a.id")) 

檢查documentation以獲取更多信息的標準。

+0

PS - 我只記的代碼下沒有嘗試它,我不知道是否可行權是 - 但你事實上可以添加sql限制,如演示。 – 2010-11-10 19:38:09