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

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

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

    Loading...

    java .net

    學(xué)習(xí)Spring的事務(wù)管理(二)

    用代碼控制實(shí)現(xiàn)事物管理的另一種方式,就是通過使用TransactionTemplate模板類,TransactionTemplate封裝了事務(wù)管理的功能,包括異常時的事務(wù)回滾,以及操作成功后的事務(wù)提交。和JdbcTemplate一樣,它使得我們無需在瑣碎的try/catch/finally代碼中徘徊---也就是為我們省去了部分事務(wù)提交、回滾代碼。

    將上面的用戶信息插入方法修改成下面這樣:

    TransactionTemplate類的構(gòu)造器需要一個TransactionCallback接口類型的參數(shù),而抽象類TransactionCallbackWithoutResult實(shí)現(xiàn)了TransactionCallback接口,抽象類TransactionCallbackWithoutResult中有一個TransactionCallbackWithoutResult()方法,該方法以TransactionStatus 為參數(shù)。所以就有了下面的用內(nèi)部類的實(shí)現(xiàn)方式。

    public boolean doUpdateUserInfo(UserInfoVO oneUserInfo)

        {

            //定義兩個sql插入語句

            String sql = "update userinfo set userPassword=? where userName=?";

            String sql2 = "update userinfo1 set userPassword=? where userName=?";

     

        TransactionTemplate transactionTemplate = new TransactionTemplate(transactionManager);

        transactionTemplate.execute(new TransactionCallbackWithoutResult()

                   {

                      public void doInTransactionWithoutResult(TransactionStatus status)

                      {

                         this.jdbcTemplate.update(sql, new Object[]

                                         {oneUserInfo.getUserName(),

                                         oneUserInfo.getUserPassword()});

                          this.jdbcTemplate.update(sql2, new Object[]

                                         {oneUserInfo.getUserName(),

                                         oneUserInfo.getUserPassword()});

                      }

                  });

     

           return true;

        }

    這種方式,代碼量少,少了try/catch/finally語句,全部被封裝在了TransactionTemplate類里面,以內(nèi)部類方式實(shí)現(xiàn)可能降低了代碼的可讀性。

    posted on 2008-08-26 22:06 閱讀(119) 評論(0)  編輯  收藏


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


    網(wǎng)站導(dǎo)航:
     

    公告

    希望有一天

    我能用鼠標(biāo)雙擊我的錢包

    然后選中一張100元

    按住“ctrl+c”

    接著不停的“ctrl+v”

    嘻嘻~~~笑醒~~~



    導(dǎo)航

    <2008年8月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    統(tǒng)計(jì)

    常用鏈接

    留言簿(6)

    隨筆分類(102)

    隨筆檔案(398)

    文章分類

    文章檔案(10)

    有趣網(wǎng)絡(luò)

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日韩亚洲精品福利| 最近高清中文字幕无吗免费看| 最近免费中文字幕4| 亚洲国产精品免费视频| 91成人免费观看网站| 亚洲成人午夜在线| 无码人妻精品中文字幕免费| 亚洲AV无码一区二区乱孑伦AS| 久久亚洲最大成人网4438| 永久免费在线观看视频| 亚洲精品色婷婷在线影院| 亚洲处破女AV日韩精品| 国产高清不卡免费视频| 久久久亚洲欧洲日产国码aⅴ| 91香蕉国产线观看免费全集| 亚洲色偷偷偷网站色偷一区| 国产亚洲精品仙踪林在线播放| 国产精品免费视频播放器| 一本岛v免费不卡一二三区| 亚洲欧洲日产国码av系列天堂| 久久狠狠躁免费观看| 亚洲av产在线精品亚洲第一站| 久久九九久精品国产免费直播| 国产亚洲成归v人片在线观看 | 亚洲精品久久无码av片俺去也| 午夜私人影院免费体验区| 免费无码又爽又黄又刺激网站| 亚洲国产综合久久天堂| 久久免费精品视频| 亚洲人成网站看在线播放| 五月婷婷亚洲综合| 国产精品99精品久久免费| 亚洲第一男人天堂| 亚洲精品国产精品乱码不卞| 外国成人网在线观看免费视频 | 国产精品日本亚洲777| 国产精品久久久亚洲| A在线观看免费网站大全| 日本永久免费a∨在线视频| 久久亚洲美女精品国产精品| 无码少妇一区二区浪潮免费|