springboot + mybatis plus 使用事务

  1. springboot使用事务需要引入sprint-tx,但是在结合mybatisplus时,mybatis-plus已经代为引入了

  2. 在springboot的启动类或者某个@Configuration上加上@EnableTransactionManagent开启事务的支持(这个@EnableTransactionManagent是否必须添加,因为我没有添加也可以使用事务,这是为什么呢?是必须加的,但是spring-boot会自动装配,所以我们不用必须手动添加,但是springboot必须添加)

  3. 在service中使用@Transactional就可以使用事务了,@Transactional添加在方法中,方法支持事务,如果将@Transactional添加在类上,则整个类的所有方法都默认支持事务

  4. @Transactional默认回滚的是RuntimeExcaption,如果不是抛出的RuntimeException则不会被回滚,【在spring框架下,所有的异常都被org.springwork重写为RuntimeExcetpion,是否说明在service中抛出的所有异常都会被回滚,暂未验证】

  5. @Transactional(rollbackFor=Excetpion.class)可以指定步回滚的异常

  6. 使用try catch捕捉异常进行异常处理,除了throw异常,不会触发回滚


版权声明:本文为m0_49289211原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。