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

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

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

    posts - 27,  comments - 14,  trackbacks - 0

    在目前使用的現有框架當中,利用springAOP機制來控制事務處理是目前最流行的一種控制事務的方式。

    但是我們在某種使用場合的過程中,為什么有時事務處理老是不起作用呢?這里,為您道出原因之一,

    首先請看一段話:

    Spring的事務實現采用基于AOP的攔截器來實現,如果沒有在事務配置的時候注明回滾的checked exception,那么只有在發生了unchecked exception的時候,才會進行事務回滾。

    有必要先解釋一下checked exceptionunchecked exception

    先看看EXCEPTIONJDK文檔當中的結構:

    java.lang.Object

      繼承者 java.lang.Throwable
          繼承者 java.lang.Exception
              繼承者 java.lang.RuntimeException
    Unchecked exception: 這類異常都是RuntimeException的子類,雖然RuntimeException同樣也是Exception的子類,但是它們是特殊的。Exception是作為checked Exception 出現的。
    所以,除了ErrorRuntimeException,其他剩下的異常都是你需要關心的,而這些異常類統稱為Checked Exception

    有了以上的基礎,看看我們框架當中的事務屬性:

    <property name="transactionAttributes">

                         <props>

                                <prop key="get*">PROPAGATION_REQUIRED,readOnly </prop>

                                <prop key="save*">PROPAGATION_REQUIRED </prop>

                                <prop key="delete*">PROPAGATION_REQUIRED</prop>

                                <prop key="update*">PROPAGATION_REQUIRED </prop>

                         </props>

     

    </property>

    此處,我們沒有指定任何異常,那么它目前默認處理的就是unchecked exception了,再結合我們自身每個項目的模塊,在我們的每個項目當中幾乎都定義了自己的異常,這些異常都是繼承自Exception,很不幸的是,我們繼承的Exception包括自己定義的異常,都是checked exception

     

    所以,在我們的事務處理機制當中,事務不管用了。

    解決辦法有2個:

    1,在事務屬性后面加上需要回滾的checked exception。比如<prop key="save*">PROPAGATION_REQUIRED,-XXXXException</prop>(注意那個"-",對應的是"+")

    2, 不改配置文件,將需要事務回滾的異常繼承自unchecked exception類,也就是RuntimeException

    (本文轉自:http://www.tkk7.com/nighthawk/archive/2007/07/09/128974.html

    posted on 2007-07-12 11:25 Scott.Pan 閱讀(357) 評論(0)  編輯  收藏 所屬分類: SSH

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


    網站導航:
     
    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    常用鏈接

    留言簿(4)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲av无码专区在线观看下载| 亚洲视频免费在线看| 亚洲国产精品18久久久久久| 亚洲成人免费网站| 亚洲成a人片毛片在线| 中文字幕无码成人免费视频| 久久精品国产99国产精品亚洲| 97无码免费人妻超级碰碰夜夜| 亚洲中文无码永久免| 国产成人精品免费视频大全五级| 国产精品亚洲一区二区在线观看| 四虎影在线永久免费观看| 一个人看的免费视频www在线高清动漫| 亚洲国产91精品无码专区| 久久www免费人成精品香蕉| 亚洲av无码av制服另类专区| 99国产精品免费视频观看| 亚洲视频一区二区三区四区| 在线播放免费播放av片| 一级毛片免费观看不收费| 亚洲AV永久无码精品| 精品免费久久久久久久| 国产精品亚洲专区无码WEB| 亚洲综合av永久无码精品一区二区| 黄色片免费在线观看| 亚洲va精品中文字幕| 免费一看一级毛片| 嫩草影院在线播放www免费观看| 亚洲一级片在线播放| 韩国二级毛片免费播放| 国产真人无码作爱免费视频| 亚洲日本香蕉视频| 亚洲精品国产成人影院| 免费A级毛片无码视频| 亚洲国产精品成人午夜在线观看 | 亚洲香蕉成人AV网站在线观看 | 亚洲一日韩欧美中文字幕在线| 亚洲国产综合久久天堂| 99久久99久久精品免费看蜜桃 | 中文字幕无码视频手机免费看| 国产精品美女免费视频观看|