Spring声明式事务管理的简洁使用方法

系统中存在多个业务逻辑对象时,反反复复地定义target和代理bean反反复复地声明事务.解决办法-定义baseTransProxy: 

<bean id="baseTransProxy" abstract="true" class="
org.springframework.transaction.interceptor.TransactionProxyFactoryBean
">
     <property name="transactionManager"
ref="myHibTransactionManager"/>
     <property name="transactionAttributes">
      <props>
       ... ...
      </props>
    </property>
</bean>
注意:在<property name="transactionAttributes">我们没有定义target!
在需要用到事务管理的bean中,继承baseTransProxy:  
<!-- Target -->
<bean id="fwxxBizTarget" class="com.aptech.jb.biz.impl.FwxxBizImpl">
<property name="fwxxDAO" ref="fwxxDAO" />
</bean>
<bean id="userBizTarget" class="com.aptech.jb.biz.impl.UserBizImpl">
<property name="userDAO" ref="userDAO" />
</bean>
<!-- Biz -->
<bean id="fwxxBiz" parent="baseTransProxy" >
    <property name="target" ref=" fwxxBizTarget" />
</bean>
<bean id="userBiz" parent="baseTransProxy">
    <property name="target" ref=" userBizTarget" />
</bean>

猜你喜欢

转载自vanhelp-songst.iteye.com/blog/1119123