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

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

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

    隨筆-9  評論-168  文章-266  trackbacks-0

    Spring 2.0 事務處理方式: http://www.tkk7.com/algz/articles/262941.html

    前者:   都需創建HibernateTransactionManager類.
    <bean id="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager">
      <property name="sessionFactory">
       <ref local="sessionFactory" />
      </property>
     </bean>

    (一)org.springframework.transaction.interceptor.TransactionProxyFactoryBean:  創建代理事務.

    事務代理Bean:

     1 <bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
     2       <property name="transactionManager">
     3             <ref bean="transactionManager" />
     4       </property>
     5       <property name="target">
     6            <ref local="userDAO" />
     7       </property>
     8       <property name="transactionAttributes">
     9            <props>
    10                 <prop key="insert*">PROPAGATION_REQUIRED</prop>
    11           </props>
    12       </property>
    13 </bean>


    引用代理Bean:

    1 <bean name="/login" class="com.test.struts.action.LoginAction" singleton="false">
    2     <property name="userDAO">                                     <!--這里的userDAO是LoginAction的屬性-->
    3           <ref bean="userDAOProxy" />                              <!--ref bean=userDAO,  調用的是原來的Bean,  則不是在事務中運行-->
    4     </property>
    5 </bean>



    (二)org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator:  根據BeanName自動創建事務代理
    org.springframework.transaction.interceptor.TransactionInterceptor:  攔截器

     1<!--                    無需引用代理BEAN(bean id 可去掉),業務層(/login)可直接調用原來的Bean==>userDAO(userDAO已封裝入事務)                          -->
     2 <bean  class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
     3       <property name="beanNames">
     4             <value>userDAO</value>
     5       </property>
     6       <property name="interceptorNames">
     7             <list>
     8                 <value>transactionInterceptorName</value>
     9             </list>
    10        </property>
    11 </bean>
    12
    13<!--                   攔截器,定義事務策略                               -->
    14 <bean id="transactionInterceptorName" class="org.springframework.transaction.interceptor.TransactionInterceptor">
    15       <property name="transactionAttributes">
    16           <props>
    17               <prop key="*">PROPAGATION_REQUIRED</prop>                    <!--事務策略定義-->
    18           </props>
    19       </property>
    20       <property name="transactionManager">
    21             <ref local="transactionManager" />
    22       </property>
    23 </bean>


     

    (三)DefaultAdvisorAutoProxyCreator:  自動創建事務代理.(與二類似)
    posted on 2007-11-26 17:00 紫蝶∏飛揚↗ 閱讀(1110) 評論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 四虎永久精品免费观看| 一级毛片在线免费观看| 日本媚薬痉挛在线观看免费| 亚洲1区1区3区4区产品乱码芒果| 伊人久久大香线蕉免费视频| 自拍偷自拍亚洲精品情侣| 中国极品美軳免费观看| 亚洲自偷自偷图片| 久久青青草原国产精品免费| 亚洲一区二区三区首页| 免费在线看v网址| 亚洲av无码无线在线观看| 亚洲av日韩片在线观看| 中国一级特黄的片子免费| 亚洲高清在线视频| 青娱乐免费在线视频| 亚洲AV噜噜一区二区三区| 亚洲日本中文字幕一区二区三区 | 亚洲风情亚Aⅴ在线发布| 国产成人无码a区在线观看视频免费| 国产精品亚洲色图| 亚洲中文字幕久久精品无码APP| 国产精成人品日日拍夜夜免费| 久久精品国产亚洲AV无码偷窥| 毛片免费视频观看| 一级特黄a大片免费| 亚洲国产高清人在线| 日韩亚洲人成网站| 成人免费乱码大片A毛片| 国产精一品亚洲二区在线播放| 131美女爱做免费毛片| 在线aⅴ亚洲中文字幕| 国产亚洲人成网站在线观看| 99视频免费播放| 亚洲一本一道一区二区三区| 亚洲国产精品综合久久网络 | 2020因为爱你带字幕免费观看全集 | 亚洲大码熟女在线观看| 亚洲精品美女久久777777| 无码少妇一区二区浪潮免费| 色爽黄1000部免费软件下载|