如何使用Spring / MyBatis进行交易?最佳实践?

时间:2011-08-23 22:29:58

标签: java spring tomcat transactions mybatis

我正在尝试使用MyBatis和Spring的交易,并且想知道是否有关于如何实现这一目标的最佳实践?任何提示或想法都表示赞赏。

我的应用程序将在针对MySQL数据库的tomcat容器中运行。

1 个答案:

答案 0 :(得分:1)

您想看看@Transactional注释docs 就最佳实践而言,它是数据库事务和spring的混合体。看看你需要回滚数据的位置,是否需要JTA等。

示例类

@Transactional
public class DefaultFooService implements FooService {

   Foo getFoo(String fooName);
}

示例xml

<!-- this is the service object that we want to make transactional -->
<bean id="fooService" class="x.y.service.DefaultFooService"/>
<!-- enable the configuration of transactional behavior based on annotations -->         <tx:annotation-driven transaction-manager="txManager"/>

<!-- a PlatformTransactionManager is still required -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<!-- (this dependency is defined somewhere else) -->
    <property name="dataSource" ref="dataSource"/>
</bean>