这里是用声明式的,先定义一个 TransactionManager 事务管理的类,
然后再定义一个事务管理的拦截器,对service中的function进行拦截.
如果是符合 add,delete,save等的名字,就处理事务~~
<bean id="hibernateTransactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<!-- bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager"/ -->
<bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager">
<ref bean="hibernateTransactionManager"/>
</property>
<property name="proxyTargetClass" value="true"/>
<property name="transactionAttributes">
<props>
<prop key="add*">PROPAGATION_REQUIRED</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="set*">PROPAGATION_REQUIRED</prop>
<prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
<bean id="columnService" parent="transactionInterceptor">
<property name="target">
<bean class="com.cwq.modules.webtree.service.ColumnServiceImpl">
<property name="columnDao" ref="columnDao" />
</bean>
</property>
</bean>




















