<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Hibernate進行時

    有關Hibenrate及其相關工具的主頁
    隨筆 - 0, 文章 - 16, 評論 - 29, 引用 - 0
    數據加載中……

    關于條件查詢detachedCriteria的一點體會

    假設要通過stuName查詢一個學生Student記錄,可以如下:
    ?DetachedCriteria?dc?=?DetachedCriteria.forClass(Student.class);
    ??? dc.add(Restrictions.like("stuName", stuName, MatchMode.ANYWHERE));
    ??????

    ?如果要通過Student的Team的teamName查詢一個Student記錄,很多人都會這么寫:
    ?DetachedCriteria?dc?=?DetachedCriteria.forClass(Student.class);
    ??? dc.add(Restrictions.like("team.teamName", teamName, MatchMode.ANYWHERE));
    ??????

    遺憾的是上述程序報錯,說是在Student中找不到team.teamName屬性,這是可以理解的。那么如何通過teamName查找Student呢?
    可以這么寫:
    ?DetachedCriteria?dc?=?DetachedCriteria.forClass(Student.class);
    ??? dc.createAlias("team", "t");
    ??? dc.add(Restrictions.like("t.teamName", teamName, MatchMode.ANYWHERE));
    ??????
    沒錯,就是要先建立team的引用,才能用team導航到teamName。

    這里有一個特殊情況,如果是對引用對象的id查詢,則可以不用建立引用,也就是可以不調用createAlias()語句,如下所示:
    ?DetachedCriteria?dc?=?DetachedCriteria.forClass(Student.class);
    ??? dc.add(Restrictions.like("team.id", teamId, MatchMode.ANYWHERE));
    ??????
    據我個人的經驗,team后只能跟其主鍵屬性,比較其他屬性要用別名。此主鍵屬性可以用“id”字符來指代,也可以用team的主鍵屬性來指代。換句話說,我的Student類的類主鍵“stuId”,不管是在HQL還是在QBC中,都可以用stu.id來指代stu.stuId。在這里可以看出“id”字符的特殊性。上述是個人觀點,并未得到確實的證實。

    posted on 2006-07-28 17:36 caixuetao 閱讀(4802) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久久久久噜噜精品免费直播 | 91av在线免费视频| 亚洲综合AV在线在线播放| 国产亚洲视频在线观看| 免费欧洲美女牲交视频| 免费在线观看自拍性爱视频| 在线视频免费国产成人| 男女超爽视频免费播放| 亚洲精品国产电影| 中文精品人人永久免费| 亚洲午夜精品一区二区| 在线看片韩国免费人成视频| 亚洲1区1区3区4区产品乱码芒果| 啦啦啦手机完整免费高清观看 | 亚洲欧美精品午睡沙发| 免费观看的a级毛片的网站| 久久精品国产亚洲av天美18| 又大又粗又爽a级毛片免费看| h视频在线免费观看| 国产成人亚洲综合色影视| 最近2019中文字幕免费大全5| 亚洲乱码中文论理电影| 日韩一区二区免费视频| 五月婷婷免费视频| 国产亚洲福利精品一区| 在线看片v免费观看视频777| 国产精品成人亚洲| 亚洲中文字幕日产乱码高清app| 无码日韩精品一区二区免费暖暖| 亚洲国产福利精品一区二区| 国产免费人成在线视频| 日韩免费在线视频| 亚洲欧美国产国产一区二区三区 | 亚洲AⅤ无码一区二区三区在线 | 成人免费无码大片A毛片抽搐色欲| 国产精品无码亚洲精品2021 | 男女拍拍拍免费视频网站| 亚洲精品福利网泷泽萝拉| 国产日产成人免费视频在线观看 | 久久久久亚洲国产AV麻豆 | 亚洲三级在线免费观看|