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

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

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

    posts - 165, comments - 198, trackbacks - 0, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    hibernate 查詢語句總結

    Posted on 2007-12-10 12:52 G_G 閱讀(1286) 評論(0)  編輯  收藏 所屬分類: hibernate
    表關系 T1oo ->ont-to-many-> T2oo (t1oo.id-t2oo.aid)

    1.單條select延遲加載
    ????????Iterator?it?=?session.createQuery("from?T1oo?").iterate();
    ????????
    while(it.hasNext()){
    ????????????T1oo?t1?
    =?(T1oo)it.next();
    ????????????t1.getName();
    ????????}
    /*運行語句?n+1
    這就只加載 id
    Hibernate:?select?t1oo0_.id?as?col_0_0_?from?t1oo t1oo0_
    此是在 t1.getName(); 延遲加載的
    Hibernate:?select?t1oo0_.id?as?id0_,?t1oo0_.name?as?name0_0_?from?t1oo?t1oo0_?where?t1oo0_.id=?
    Hibernate:?select?t1oo0_.id?as?id0_,?t1oo0_.name?as?name0_0_?from?t1oo?t1oo0_?where?t1oo0_.id=?
    */

    2.級連查詢:
    1)set排序? <set ... order-by="avg desc" ...> 從大到小
    2)batch-size="10" 用法是
    ??? select * from t2oo? where aid in (?,?,?....)
    3)

    如果想忽略延遲,并有一定邏輯全部加載,這有兩中解決辦法:
    1).內連
    mysql>?select???*
    ????
    ->?from?t1oo?t1oo0_?inner?join?t2oo?t2ooset1_?on?t1oo0_.id=t2ooset1_.aid;
    +----+-----------+----+-----+------+---------+
    | id | name????? | id | avg | aid? | version |
    +----+-----------+----+-----+------+---------+
    |? 1 | liukaiyi? |? 1 |? 23 |??? 1 |?????? 1 |
    |? 1 | liukaiyi? |? 2 |? 24 |??? 1 |?????? 1 |
    |? 1 | liukaiyi? |? 3 |? 25 |??? 1 |?????? 1 |
    |? 2 | liukaiyi2 |? 4 |? 26 |??? 2 |?????? 0 |
    +----+-----------+----+-----+------+---------+

    ?
    ? ? ? ? Iterator?it?=?new?HashSet(session.createQuery("from?T1oo?t1?inner?join?fetch?t1.t2ooSet?t2where t2.id<=3").list()).iterator();
    ????????
    while(it.hasNext()){
    ????????????T1oo?t1?
    =?(T1oo)it.next();
    ????????????System.out.println(t1.getName());
    ????????????
    ????????????
    for(Iterator?itr=t1.getT2ooSet().iterator();itr.hasNext();?){
    ????????????????T2oo?t2?
    =?(T2oo)itr.next();
    ????????????????System.out.println(
    "??"+?t2.getAvg()?);
    ????????????}
    ????????}
    結果是:
    Hibernate:?select?t1oo0_.id?as?id0_,?t2ooset1_.id?as?id1_,?t1oo0_.name?as?name0_0_,?t2ooset1_.version?as?version1_1_,?t2ooset1_.avg?as?avg1_1_,?t2ooset1_.aid?as?aid1_1_,?t2ooset1_.aid?as?aid0__,?t2ooset1_.id?as?id0__?from?t1oo?t1oo0_?inner?join?t2oo?t2ooset1_?on?t1oo0_.id=t2ooset1_.aid?where?t2ooset1_.id<=3
    liukaiyi
    ??
    24
    ??
    23
    ??
    25

    主站蜘蛛池模板: 亚洲乱码国产乱码精华| 亚洲色偷偷偷综合网| eeuss免费天堂影院| 免费国产一级特黄久久| 国产亚洲综合视频| 亚洲AV无码成H人在线观看 | 99久9在线|免费| 久久亚洲国产精品成人AV秋霞| 高清一区二区三区免费视频| 亚洲AV成人无码久久精品老人| 无码人妻丰满熟妇区免费| 亚洲精品高清国产麻豆专区| 永久免费的网站在线观看| 亚洲七久久之综合七久久| 亚洲国产精品人人做人人爱| sihu国产精品永久免费| 亚洲国产成人一区二区精品区| a级成人毛片免费视频高清| 亚洲国产高清在线| 一个人在线观看视频免费| 亚洲午夜理论片在线观看| 亚洲AV无码一区二区三区国产| 永久免费精品影视网站| 婷婷亚洲综合五月天小说 | 国产最新凸凹视频免费| eeuss影院免费92242部| 亚洲Av无码专区国产乱码DVD | 亚洲人成无码www久久久| 国偷自产一区二区免费视频| 亚洲卡一卡2卡三卡4麻豆| 国产成人综合久久精品免费| 国产高清对白在线观看免费91| 亚洲av永久无码精品漫画 | 无码专区一va亚洲v专区在线 | 香蕉视频在线观看免费| 亚洲AV无码久久精品成人| 无码一区二区三区AV免费| 五级黄18以上免费看| 亚洲国产精品美女| 狠狠综合久久综合88亚洲| 成人黄页网站免费观看大全|