隨筆-112  評(píng)論-73  文章-0  trackbacks-0
          問題是這樣的:
          使用DetachedCriteria 查詢,當(dāng)使用多表關(guān)聯(lián)查詢時(shí)只能通過其他表的主鍵設(shè)置值,非主鍵進(jìn)行關(guān)聯(lián)就提示
          could not resolve property: XXX of XXX

          例如:

          c.add(Restrictions.eq("customer.id", customerId));
          其中customer是本實(shí)體的一個(gè)屬性,設(shè)置關(guān)聯(lián).id 為customer的主鍵
          這種方式可以進(jìn)行查詢,并得到正確的結(jié)果.

          c.add(Restrictions.eq("customer.number", number))
          這里的number 是customer 的非主鍵屬性,這種方式查詢時(shí)提示 could not resolve property customer.number of xxx.

          經(jīng)過測(cè)試表明,hibernate 應(yīng)該是不支持這種非主鍵設(shè)置值進(jìn)行查詢。但是使用nameQuery 寫語(yǔ)句的方式卻是可以查詢并得到正確結(jié)果.
          語(yǔ)句為:
          select x from X as x where customer.number =?

          誰(shuí)能合解釋一下呢?為什么呢?

          posted on 2010-04-28 22:44 Libo 閱讀(294) 評(píng)論(0)  編輯  收藏 所屬分類: 其他
          主站蜘蛛池模板: 宜黄县| 成安县| 合川市| 舒城县| 旅游| 玛曲县| 高尔夫| 吉隆县| 那坡县| 衡阳市| 雷波县| 乐陵市| 含山县| 裕民县| 隆德县| 龙岩市| 中西区| 双柏县| 新沂市| 怀柔区| 肇州县| 大理市| 吉木萨尔县| 高唐县| 施甸县| 广西| 东海县| 平顶山市| 元阳县| 富蕴县| 文山县| 高台县| 山丹县| 丘北县| 旬邑县| 五莲县| 新余市| 喀喇沁旗| 柯坪县| 洪湖市| 海阳市|