Loading...

          java .net

          學習Spring的事務管理(三)

          最后一種方式就是聲明控制的事務處理了,這里面基本上都是在xml文件中配置,在代碼中見不到任何有關事務的類型,實現了非侵入。其原理用到了Ioc對象反轉控制和AOP,到現在我還沒弄清楚Aop是怎么個玩意兒,哈哈,還得好好學。

          spring的配置文件中設置一個代理類對象,其中的屬性包括,要代理類的接口,要代理的哪個類,事務的處理方式,這樣在數據實現類中調用數據庫的方法中就像沒有用事務一樣寫代碼,另外在控制器中調用這個處理方法的時候,以前是要通過Ioc獲得一個數據實現類的對象,現在,這個實現類被代理的,我們只需得到這個代理類的對象,然后用這個代理類的對象調用相應的數據處理方法。

          Xml配置文件中的部分配置:

          <bean id="userDAOProxy"  class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">

              <property name="proxyInterfaces">

                <list>

                  <value>springmvcwebapp.UserLoginInterface</value>

                </list>

              </property>

              <property name="transactionManager">

                <ref bean="transactionManager"/>

              </property>

              <property name="target">

                <ref bean="oneUserLoginImple"/>

              </property>

              <property name="transactionAttributes">

                <props>

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

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

                </props>

              </property>

            </bean>

          <bean id="dataSource"

                class="org.springframework.jdbc.datasource.DriverManagerDataSource">

                <property name="driverClassName">

                  <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>

                </property>

                <property name="url">

                   <value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=WebStudyDB</value>

                </property>

                <property name="username">

                  <value>sa</value>

                </property>

                <property name="password">

                  <value>123456</value>

                </property>

              </bean>

          <bean id="transactionManager"  class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

             <property name="dataSource">

                <ref bean="dataSource"/>

              </property>

            </bean>

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


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


          網站導航:
           

          公告

          希望有一天

          我能用鼠標雙擊我的錢包

          然后選中一張100元

          按住“ctrl+c”

          接著不停的“ctrl+v”

          嘻嘻~~~笑醒~~~



          導航

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

          統計

          常用鏈接

          留言簿(6)

          隨筆分類(102)

          隨筆檔案(398)

          文章分類

          文章檔案(10)

          有趣網絡

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 修文县| 常宁市| 潮州市| 普兰店市| 灵宝市| 嘉兴市| 栾城县| 奉新县| 韶山市| 广南县| 岳阳市| 临澧县| 广饶县| 宽城| 固阳县| 云林县| 美姑县| 枞阳县| 兴山县| 兴安盟| 扎鲁特旗| 奈曼旗| 汉川市| 宜兰市| 南康市| 二连浩特市| 海淀区| 南昌市| 汉川市| 延边| 井陉县| 土默特右旗| 乐陵市| 什邡市| 吉隆县| 福泉市| 阆中市| 南丹县| 焦作市| 临湘市| 伊春市|