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

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

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

    隨筆 - 6  文章 - 129  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(14)

    隨筆檔案(6)

    文章分類(467)

    文章檔案(423)

    相冊

    收藏夾(18)

    JAVA

    搜索

    •  

    積分與排名

    • 積分 - 825738
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    很多程序需要在某個事務中獲取對象,然后將對象發送到界面層去操作,最后在一個新的事務保存所做的修改。 在高并發訪問的環境中使用這種方式,通常使用附帶版本信息的數據來保證這些“長“工作單元之間的隔離。

    Hibernate通過提供使用Session.update()Session.merge()方法 重新關聯脫管實例的辦法來支持這種模型。

    // in the first session
    Cat cat = (Cat) firstSession.load(Cat.class, catId);
    Cat potentialMate = new Cat();
    firstSession.save(potentialMate);
    // in a higher layer of the application
    cat.setMate(potentialMate);
    // later, in a new session
    secondSession.update(cat);  // update cat
    secondSession.update(mate); // update mate

    如果具有catId持久化標識的Cat之前已經被另一Session(secondSession)裝載了, 應用程序進行重關聯操作(reattach)的時候會拋出一個異常。

    如果你確定當前session沒有包含與之具有相同持久化標識的持久實例,使用update()。 如果想隨時合并你的的改動而不考慮session的狀態,使用merge() 換句話說,在一個新session中通常第一個調用的是update()方法,以便保證重新關聯脫管(detached)對象的操作首先被執行。

    希望相關聯的脫管對象(通過引用“可到達”的脫管對象)的數據也要更新到數據庫時(并且也僅僅在這種情況), 應用程序需要對該相關聯的脫管對象單獨調用update() 當然這些可以自動完成,即通過使用傳播性持久化(transitive persistence),請看第 11.11 節 “傳播性持久化(transitive persistence)”。

    lock()方法也允許程序重新關聯某個對象到一個新session上。不過,該脫管(detached)的對象必須是沒有修改過的

    //just reassociate:
    sess.lock(fritz, LockMode.NONE);
    //do a version check, then reassociate:
    sess.lock(izi, LockMode.READ);
    //do a version check, using SELECT ... FOR UPDATE, then reassociate:
    sess.lock(pk, LockMode.UPGRADE);

    請注意,lock()可以搭配多種LockMode, 更多信息請閱讀API文檔以及關于事務處理(transaction handling)的章節。重新關聯不是lock()的唯一用途。

    其他用于長時間工作單元的模型會在第 12.3 節 “樂觀并發控制(Optimistic concurrency control)”中討論。

    文章出處:http://docs.huihoo.com/framework/hibernate/reference-v3_zh-cn/objectstate.html

    posted on 2007-10-29 16:15 Ke 閱讀(333) 評論(0)  編輯  收藏 所屬分類: hibernate
    主站蜘蛛池模板: 鲁大师在线影院免费观看 | 亚洲国产熟亚洲女视频| 国产精品福利片免费看| 成人在线视频免费| 久久精品国产亚洲av麻豆色欲| 黄页网站在线观看免费| 日韩精品无码区免费专区| 久久精品7亚洲午夜a| 免费人成再在线观看网站| 成人免费午夜无码视频| 亚洲AV人无码激艳猛片| 精品多毛少妇人妻AV免费久久 | 亚洲中文字幕无码永久在线 | 全免费一级午夜毛片| 亚洲视频精品在线观看| APP在线免费观看视频| 亚洲国产精品尤物YW在线观看| jiz zz在亚洲| 免费在线观看h片| 亚洲高清视频在线观看| 在线观看免费视频网站色| 亚洲国产aⅴ综合网| 久久综合亚洲色hezyo| 免费av欧美国产在钱| 亚洲视频免费一区| 久久中文字幕免费视频| 亚洲乱码精品久久久久..| 一边摸一边桶一边脱免费视频| 国产成人高清精品免费软件 | 成年女人免费视频播放体验区| 亚洲精品国产福利在线观看| 久久aa毛片免费播放嗯啊| 久久久青草青青亚洲国产免观| 国产精品成人啪精品视频免费| 亚洲AV无码专区日韩| 黄色免费网址大全| 可以免费观看一级毛片黄a | 亚洲国产另类久久久精品黑人 | 亚洲熟妇AV一区二区三区宅男| 免费国产成人高清在线观看网站| 亚洲精品国产啊女成拍色拍|