關於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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM