Spring事务管理方式

2018-09-17  本文已影响0人  空山Echo

重点掌握xml配置和注解配置两种

一. 编码式(了解)

  1. 配置事务管理器
<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/> </bean>
  1. 配置事务管理的模板
<!-- 配置事务管理模板 -->
<bean id="transactionTemplate" class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager"/> </bean>
  1. 需要在业务层注入事务管理模板
<!-- 配置业务层的类 -->
<bean id="accountService"
class="cn.itcast.transaction.demo1.AccountServiceImpl">
<property name="accountDao" ref="accountDao"/>
<!-- 注入事务管理模板 -->
<property name="transactionTemplate" ref="transactionTemplate"/>
</bean>
  1. 手动编写代码实现事务管理
public void transfer(final String from, final String to, final Double money) { transactionTemplate.execute(new TransactionCallbackWithoutResult() {{
@Override
protected void doInTransactionWithoutResult(TransactionStatus status)
 accountDao.outMoney(from, money); int d = 1 / 0; accountDao.inMoney(to, money);
 } });
}

二.xml配置

  1. 导包


    image.png
  2. 添加约束


    image.png
  3. 配置连接池
  4. 配置事务管理器
<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/> </bean>
  1. 配置事务通知


    image.png
  2. 配置织入


    image.png

三.注解配置

  1. 导包
  2. 加入约束
  3. 配置连接池
  4. 配置事务管理器
<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/> </bean>
  1. 开启使用注解管理aop事务
    <tx:annotation-driven/>
  2. 添加注解


    image.png
上一篇 下一篇

猜你喜欢

热点阅读