• 关于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异常,不会触发回滚

    参考:

    https://blog.csdn.net/chaitoudaren/article/details/105622751

    https://blog.csdn.net/qq_35890572/article/details/96286142

    勘破、放下、自在
  • 相关阅读:
    How to print GETDATE() in SQL Server with milliseconds in time?
    StarLink卫星网络如何工作
    Chinasat16
    天线增益计算
    Schemachine
    源代码之整洁代码
    关于进程内缓存与分布式缓存
    IOT物联网时代测试演化
    互联网大促运维实践案例
    Kubernetes应用场景
  • 原文地址:https://www.cnblogs.com/love-dream-88/p/14079294.html
Copyright © 2020-2023  润新知