注意点:
1、引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<scope>test</scope>
</dependency>
2、@Transactional注解可加在类和方法上
3、在Spring Boot中使用@Transactional注解,需要在启动类上添加@EnableTransactionManagement注解开启事务支持
4、REQUIRED :如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。
@Transactional(propagation= Propagation.REQUIRED)
@Override
public void trade3(String outer, String inner, Integer money) {
//汇款
accountService.out(outer, money);
// 抛出异常
int i = 1/0;
//收款
accountService.in(inner, money);
}
参考文章
SpringBoot2.0 基础案例(12):基于转账案例,演示事务管理操作 - 知了一笑 - 博客园
Spring Boot事务控制 - piaobodeyun0000 - 博客园
|