Spring boot +mybatis 實現宣告式事務管理
在專案中,一個函式需要進行兩條sql操作,兩條sql操作為一個整體,期望是要不一起執行,要不都不執行,所以引入了事務管理。
遇到的問題&未解決的坑:
在一個@service實現了一個事務管理的函式,發現在另一個service裡面新增此方法的@Autowired註解,事務管理失效
解決辦法:
在@controller層呼叫此方法時新增 @Transactional註解
方法以及呼叫新增的註解:
@Transactional(isolation = Isolation.READ_COMMITTED,propagation = Propagation.REQUIRED,readOnly = false,rollbackFor = {Exception.class})
只要是函式內部發生exception及實現回滾
方法級別:
controller層級別:
新發現 :
如果實現事務管理的service不被別的service呼叫,則不需要在controller層新增事務註解,如果被別的service呼叫,則事務管理失效,此時可以在controller層加上事務管理的注
解,service層加不加事務管理註解不起作用
相關文章
- SpringMVC、MyBatis 宣告式事務管理SpringMVCMyBatis
- Spring MVC + Mybatis + Spring Aop宣告式事務管理沒有作用SpringMVCMyBatis
- Spring的事務管理(二)宣告式事務管理Spring
- spring宣告式事務管理配置Spring
- 使用Spring Boot實現事務管理Spring Boot
- 使用Spring Boot實現分散式事務Spring Boot分散式
- Spring宣告式事務的兩種實現方式Spring
- Spring Boot 揭祕與實戰(二) 資料儲存篇 - 宣告式事務管理Spring Boot
- 全面分析 Spring 的程式設計式事務管理及宣告式事務管理Spring程式設計
- Spring-宣告式事務Spring
- 三 Spring 宣告式事務Spring
- Spring宣告式事務控制Spring
- Spring宣告式事務@Transactional使用Spring
- Spring @Transactional 宣告式事務揭祕Spring
- 深刻理解Spring宣告式事務Spring
- Spring宣告式事務管理出錯示例與解決之道Spring
- 五(二)、spring 宣告式事務xml配置SpringXML
- MyBatis5:MyBatis整合Spring事務管理(上篇)MyBatisSpring
- 使用Spring Boot實現Redis事務 | VinsguruSpring BootRedis
- Spring宣告式事務控制原理之宣告式事務的重要元件在AOP中的應用Spring元件
- Spring的四種宣告式事務的配置-Hibernate事務Spring
- Spring宣告式事務純xml模式回顧SpringXML模式
- JavaEE(12)Spring整合Mybaits、宣告式事務JavaSpringAI
- spring宣告式事務無法關閉sessionSpringSession
- Spring筆記(4) - Spring的程式設計式事務和宣告式事務詳解Spring筆記程式設計
- Springboot資料庫事務處理——Spring宣告式事務Spring Boot資料庫
- 筆記53-Spring jdbcTemplate&宣告式事務筆記SpringJDBC
- spring事物配置,宣告式事務管理和基於@Transactional註解的使用Spring
- Spring中的AOP,以及宣告式事務 @Transactional無法攔截事務Spring
- 解析Spring Boot中的事務管理機制Spring Boot
- Spring事務的介紹,以及基於註解@Transactional的宣告式事務Spring
- Spring宣告式事務注意點,以及不生效情況Spring
- Spring程式設計式和宣告式事務例項講解Spring程式設計
- Spring Boot整合MyBatis實現通用MapperSpring BootMyBatisAPP
- XA式、非XA式Spring分散式事務的實現Spring分散式
- 使用Spring Boot + Kafka實現Saga分散式事務模式的原始碼 - vinsguruSpring BootKafka分散式模式原始碼
- java版工程管理系統Spring Cloud+Spring Boot+Mybatis實現工程管理系統JavaCloudSpring BootMyBatis
- Spring的事務管理入門:程式設計式事務管理(TransactionTemplate)Spring程式設計