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

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

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

    MDA/MDD/TDD/DDD/DDDDDDD
    posts - 536, comments - 111, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    hibernate問題

    Posted on 2007-09-28 03:51 leekiang 閱讀(638) 評論(0)  編輯  收藏 所屬分類: hibernate
    1,get一個對象并打算修改這個對象時,hibernate會判斷該對象的屬性值是否有變動,如果沒有任何變動,hibernate不會執行update語句。在同時修改頁面上的多條記錄時可發現這一點。

    2,執行以下語句時hibernate3.0.5會報錯,而3.2不會
    sql="select 1+1 from dual";
    session.createSQLQuery(sql).uniqueResult()
    報錯:addScalar() or addEntity()?must be called on a sql query before executing the query.

    3,<many-to-one> 的lazy設置為true時,get子對象不會把該父對象抓過來,但可以手動寫代碼抓取父對象
    如 Son son =(Son)this.getHibernateTemplate().get(Son.class, id);
    ??? ?? 然后執行 son.getParent().getName();
    ?? 這樣不僅僅會抓取到name,其他所有的屬性如age,sex等都會取到,即用p.getParent().getAge()達到了同樣的效果,后臺都執行了select * from parent where id=??? 注意用p.getParent()僅能得到parent的id.
    ?? 這時debug查看parent對象的內存快照,看到的是一個用cglib實現的代理對象,
    Hibernate通過使用CGLIB,來實現動態構造一個目標對象的代理類對象,并且在代理類對象中包含目標對象的所有屬性和方法,而且所有屬性均被賦值為null。通過調試器顯示的內存快照,我們可以看出此時真正的User對象,是包含在代理對象的CGLIB$CALBACK_0.target屬性中,當調用son.getName()方法,這時通過CGLIB賦予的回調機制,實際上調用CGLIB$CALBACK_0.getName()方法,當調用該方法時,Hibernate會首先檢查CGLIB$CALBACK_0.target屬性是否為null,如果不為空,則調用目標對象的getName方法,如果為空,則會發起數據庫查詢,生成類似這樣的SQL語句:select * from parent where id=’1’;來查詢數據,并構造目標對象,并且將它賦值到CGLIB$CALBACK_0.target屬性中。
    這樣,通過一個中間代理對象,Hibernate實現了實體的延遲加載,只有當用戶真正發起獲得實體對象屬性的動作時,才真正會發起數據庫查詢操作。
    ??? <many-to-one> 的lazy設置為false時,抓取父對象沒有采用代理機制。

    4,用session.close(),執行多次查詢后報session is closed的錯誤,而hibernateSessionFactory.closeSession()沒有這個問題,這是什么原因?

    5,ORA-01466: 無法讀數據 - 表定義已更改
    原因是系統時間修改造成的,其他原因詳見
    http://www.orafaq.com/usenet/comp.databases.oracle.server/2007/03/31/1586.htm

    6,
    spring的一個方法上有事務,先用hibernate加載一個對象,接著改變對象的某個屬性的值,
    再用sql去數據庫查對應的記錄,然后才提交。
    用sql去查時發現對應的字段也改變了,這是怎么回事?


    ??
    主站蜘蛛池模板: 亚洲中文字幕无码中文| 久久夜色精品国产噜噜噜亚洲AV| 亚洲精品午夜国产va久久| 67194国产精品免费观看| 亚洲国产精品一区二区第一页 | 拍拍拍又黄又爽无挡视频免费| 亚洲黄色免费在线观看| 精品无码无人网站免费视频| 亚洲日韩区在线电影| 免费无遮挡无码永久视频| 久久精品国产亚洲av水果派 | 亚洲aⅴ无码专区在线观看春色 | 亚洲欧洲自拍拍偷精品 美利坚| 精品女同一区二区三区免费播放| 国产传媒在线观看视频免费观看| 免费观看亚洲人成网站| 亚洲国产免费综合| 成人A毛片免费观看网站| 亚洲大尺度无码专区尤物| 久9这里精品免费视频| 亚洲国产成人综合| 免费看片免费播放| 永久免费观看黄网站| 亚洲VA中文字幕无码毛片| 6080午夜一级毛片免费看6080夜福利| 国产成人精品亚洲日本在线| 永久在线毛片免费观看| 一级a性色生活片久久无少妇一级婬片免费放 | 中国极品美軳免费观看| 亚洲精品在线观看视频| 久九九精品免费视频| 无码色偷偷亚洲国内自拍| 亚洲综合色自拍一区| 57pao国产成永久免费视频 | 老司机免费午夜精品视频| 婷婷精品国产亚洲AV麻豆不片| 国产成人精品免费视频大全麻豆| 色婷婷六月亚洲综合香蕉| 久久亚洲综合色一区二区三区| 99久久免费国产香蕉麻豆| 国产尤物在线视精品在亚洲|