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

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

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

    阿寶 Keep Walking......


    JUST DO IT, DO YOUR BEST ! -- 勿在浮沙筑高臺

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      49 Posts :: 6 Stories :: 26 Comments :: 0 Trackbacks
    1. Transaction 分兩種,Local Transaction 和 Global Transaction。
    涉及到一個Connection的Commit,稱為Local Transaction。
    涉及到多個Connection的Commit,稱為Global Transaction。
    樓主提到的是,Global Transaction.

    2. Global Transaction 需要XA接口(包括在JTA里面)的支持。

    import javax.sql.XAConnection;
    import javax.transaction.xa.Xid;
    import javax.transaction.xa.XAResource;
    import javax.transaction.xa.XAException;
    import javax.transaction.Transaction;
    import javax.transaction.TransactionManager;

    其中的
    javax.sql.XAConnection;
    javax.transaction.xa.Xid;
    javax.transaction.xa.XAResource;

    這些XA接口的實現(xiàn),需要數(shù)據(jù)庫的JDBC提供。
    數(shù)據(jù)庫本身要支持XA。數(shù)據(jù)庫的JDBC也要提供XA的實現(xiàn)。

    Oracle, Sybase, DB2, SQL Server等大型數(shù)據(jù)庫才支持XA, 支持Global Transaction。
    My SQL 連Local Transaction都支持不好,更別說Global Transation了。

    3. XA需要兩階段提交 -- prepare 和 commit.
    假設有兩個Connection, con1, con2, 大體的過程如下,

    con1 = XAResouce1.getConnection...
    con2 = XAResouce2.getConnection...

    con1 do some thing.
    con2 do some thing.
    after they finish.

    pre1 = XAResouce1.prepare();
    pre2 = XAResouce2.prepare();

    if( both pre1 and pre2 are OK){
    XAResouce1 and 2 commit
    }else {
    XAResouce1 and 2 rollback
    }

    前面有人講了,在XAResouce1 and 2 commit的時候,
    可能XAResouce1 commit() 成功了,XAResouce2 commit()失敗了。
    這時候,會拋出一個 “啟發(fā)式異常”。程序可以處理這個異常。比如,XAResouce.recover()之類。
    但一般情況下,還真沒別的辦法,需要數(shù)據(jù)管理員根據(jù)數(shù)據(jù)操作日志 undo所有的操作,或者恢復數(shù)據(jù)備份。
    有的數(shù)據(jù)庫在進行數(shù)據(jù)操作的時候,會生成一個“反操作”日志。比如,insert 對 delete, 等。

    4. TransactionManager的實現(xiàn)能夠處理多個XAResouce(一個XAResouce list)的情況。
    比如Tyrex?;騄Boss等EJB Server的Transaction實現(xiàn)代碼。
    posted on 2006-06-01 11:56 阿寶 閱讀(1869) 評論(0)  編輯  收藏

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


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 亚洲综合亚洲综合网成人| 情侣视频精品免费的国产| 国产日韩亚洲大尺度高清| 在线播放国产不卡免费视频| 四虎影视在线永久免费看黄| 国产综合成人亚洲区| 日本xxwwxxww在线视频免费| 亚洲AV成人一区二区三区观看| 大香人蕉免费视频75| 小说区亚洲自拍另类| 成人亚洲网站www在线观看| 亚洲AV无码成人精品区日韩| 天天拍拍天天爽免费视频| 最新亚洲人成无码网站| 亚洲国产一成久久精品国产成人综合 | 亚洲亚洲人成综合网络| 野花香高清在线观看视频播放免费 | 桃子视频在线观看高清免费视频| 久久精品亚洲综合专区| 黄在线观看www免费看| 国产亚洲sss在线播放| 日本免费电影一区| yellow视频免费在线观看| 久久久久久亚洲精品| 免费在线视频你懂的| 久久精品国产亚洲av天美18| 亚洲偷自拍拍综合网| 久久久精品2019免费观看| 亚洲 日韩经典 中文字幕 | 亚洲av无码一区二区三区人妖| 免费a在线观看播放| 美女在线视频观看影院免费天天看 | 18禁无遮挡无码网站免费| 黄色免费在线网址| 久久亚洲伊人中字综合精品| 一个人免费观看在线视频www| 免费播放国产性色生活片| 久久夜色精品国产噜噜亚洲AV| 最近的免费中文字幕视频| 中国videos性高清免费| 亚洲一卡二卡三卡|