posts - 495,comments - 227,trackbacks - 0

             這個配置文件是我做SSH的時候用的片斷,用Spring來管理事務: 
          <!-- spring代理hibernate事務的兩種方法 --> 
               
              <!-- 不管采用哪種方法 下面的這個bean都是必須的 --> 
               
              <bean id="transactionManager" 
                  class="org.springframework.orm.hibernate3.HibernateTransactionManager"> 
                  <property name="sessionFactory"> 
                      <ref local="sessionFactory" /> 
                  </property> 
              </bean> 
               
              <!-- 1、spring事務代理模板 --> 
               
              <!-- 需要事務的Service類要繼承下面的bean,使用方法如下--> 
               
              <!--  
              <bean id="txProxyTemplate" abstract="true" 
                             class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean"> 
                  <property name="transactionManager"> 
                      <ref bean="transactionManager"/> 
                  </property> 
                  <property name="transactionAttributes"> 
                      <props> 
                          <prop key="save*">PROPAGATION_REQUIRED</prop> 
                          <prop key="del*">PROPAGATION_REQUIRED</prop> 
                          <prop key="change*">PROPAGATION_REQUIRED</prop> 
                          <prop key="*">PROPAGATION_REQUIRED,readOnly</prop> 
                      </props> 
                  </property> 
              </bean> 
               
              <bean id="StudentDaoHibernate" 
                  class="com.lideedu.yame.dao.hibernate.StudentDAOHibernateImpl" 
                  singleton="false"> 
                  <property name="sessionFactory"> 
                      <ref bean="sessionFactory" /> 
                  </property> 
                  <property name="classService"> 
                      <ref bean="ClassService" /> 
                  </property> 
              </bean> 
               
              <bean id="StudentServiceTarget" 
                  class="com.lideedu.yame.business.IStudentServiceImpl" singleton="false"> 
                  <property name="studentDAO"> 
                      <ref bean="StudentDaoHibernate" /> 
                  </property> 
              </bean> 
               
              <bean id="StudentService" parent="txProxyTemplate"> 
                  <property name="target"> 
                      <ref bean="StudentServiceTarget"/> 
                  </property> 
              </bean> 
               
              -->     
                   
              <!-- 2、spring事務自動代理 --> 
               
              <!-- 需要事務的方法只要方法名和下面的模式匹配就可以接受Spring的事務代理 --> 
               
              <bean id="autoProxy" 
                  class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"> 
              </bean> 
              <bean id="transactionAttributeSource" 
                class="org.springframework.transaction.interceptor.NameMatchTransactionAttributeSource"> 
                  <property name="properties"> 
                      <props> 
                          <prop key="save*">PROPAGATION_REQUIRED</prop> 
                          <prop key="update*">PROPAGATION_REQUIRED</prop>             
                          <prop key="del*">PROPAGATION_REQUIRED</prop> 
                          <prop key="change*">PROPAGATION_REQUIRED</prop>         
                      </props> 
                  </property> 
              </bean> 
              <bean id="transactionInterceptor" 
                  class="org.springframework.transaction.interceptor.TransactionInterceptor"> 
                  <property name="transactionManager"> 
                      <ref bean="transactionManager" /> 
                  </property> 
                  <property name="transactionAttributeSource"> 
                      <ref bean="transactionAttributeSource" /> 
                  </property> 
              </bean> 
              <bean id="transactionAdvisor" 
                  class="org.springframework.transaction.interceptor.TransactionAttributeSourceAdvisor"> 
                  <constructor-arg> 
                      <ref bean="transactionInterceptor" /> 
                  </constructor-arg> 
          </bean> 

          posted on 2007-12-21 23:33 SIMONE 閱讀(1309) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 西盟| 镇原县| 巩义市| 辉县市| 康保县| 九龙坡区| 昌乐县| 高雄市| 西乌珠穆沁旗| 浮山县| 同仁县| 永嘉县| 冕宁县| 佛冈县| 丹江口市| 易门县| 远安县| 寿宁县| 永新县| 石楼县| 万山特区| 东平县| 承德县| 米林县| 荣昌县| 故城县| 武山县| 曲水县| 广德县| 瑞丽市| 正蓝旗| 南城县| 南召县| 乐东| 修水县| 色达县| 五台县| 章丘市| 泰宁县| 灌阳县| 郴州市|