快捷搜索:

MyBatis3整合Spring3的Transaction事务处理

正如第二版,Spring 仅支持 iBatis2。那么我们就想将 MyBatis3 的支持加入到 Spring3.0(参考 Spring 的 Jira 的问题)中。

不幸的是,Spring 3.0 的开拓在 MyBatis 3.0 官方宣布前就停止了。由于Spring开拓团队不想宣布一个基于非发行版的MyBatis的整合支持,

那么 Spring官方的支持就不得不等到至少 3.1 版本了。要在 Spring 中支持 MyBatis,MyBatis 社区觉得现在应该是自己连合供献者和有兴趣的人

一路来开始进行 Spring 和 MyBatis 整合的时刻了。 这个小类库就来创建损掉的粘贴 Spring 和 MyBtatis 这两个盛行框架的胶水。

减少用户不得不来设置设置设备摆设摆设MyBatis和Spring 3.X高低文情况的样板和冗余代码。 它还透明地增添了 Spring对 MyBatis 事务的支持。

以是只管MyBatis3供给了对Spring的整合,然则org.springframework.jdbc.datasource.DataSourceTransactionManager这个事务治理器照样不支持

aop的事务治理要领,假如你还想设置你的事务的隔离级别、只读(PROPAGATION_REQUIRED、ISOLATION_DEFAULT、readOnly、timeout)。

那么你可以应用org.springframework.transaction.interceptor.TransactionProxyFactoryBean这个事务拦截器的代理工厂。它照样可以完成的,然则当然不会

有HibernateTransactionManager那样的完美,由于DataSourceTransactionManager不能应用aop来治理我们的事务。

基础设置设置设备摆设摆设如下:

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

property name="dataSource" ref="dataSource" />

bean>

bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">

property name="transactionManager" ref="transactionManager" />

property name="transactionAttributes">

props>

prop key="add*">PROPAGATION_REQUIREDprop>

prop key="edit*">PROPAGATION_REQUIREDprop>

prop key="remove*">PROPAGATION_REQUIREDprop>

prop key="insert*">PROPAGATION_REQUIREDprop>

prop key="update*">PROPAGATION_REQUIREDprop>

prop key="del*">PROPAGATION_REQUIREDprop>

prop key="*">readOnlyprop>

props>

property>

bean>

您可能还会对下面的文章感兴趣: