spring多資料來源下 事務不生效
多資料來源下, 加了@Transactional(rollbackFor = Exception.class)後發現,資料來源切換不了.
不加事務註解,即只有@DataSourceChange時的流程是,程式執行到fetchRawDataForCriterias()方法時,會先去執行 doAround()方法,設定當前執行緒的資料來源.
然後執行 determinCurrentLookupKey()方法,得到當前執行緒的資料來源.
加了@Transactiona後,發現程式會第一時間執行determineCurrentLookupKey(), 後面又執行doAround()方法.但是再後面就不執行determinCurrentLookupKey()了.這就導致,資料來源沒有實現切換.
解決方法:調整兩個annotation執行的先後順序,先執行@DataSourceChange(hopper = true),於是修改下面程式碼,加一個Order註解
如果覺得本篇文章有所幫助,請幫忙微信掃描下本人寫的一個實用小程式 “安全期隨時看”,讓你隨時掌握愛愛時間,多謝幫助!
--------------------------- -------------------------
-------------------------------------------安全期隨時看---------------------------------------------
相關文章
- Springboot 配置多資料來源Mybatis的UnderScore不生效Spring BootMyBatis
- 實現多資料來源事務
- Springboot通過AOP整合多資料來源,分析@Transaction切換資料來源不生效問題Spring Boot
- Spring Boot與多資料來源那點事兒~Spring Boot
- Spring多資料來源配置Spring
- Spring Data JPA系列4——Spring宣告式數事務處理與多資料來源支援Spring
- springboot-jta-atomikos多資料來源事務管理Spring Boot
- MybatisPlus多資料來源及事務解決思路MyBatis
- 同學,你的多資料來源事務失效了
- Spring多資料來源獲取Spring
- Spring Boot 多資料來源配置Spring Boot
- Spring Boot 配置多資料來源Spring Boot
- Spring 下,關於動態資料來源的事務問題的探討Spring
- SpringBoot2 整合JTA元件,多資料來源事務管理Spring Boot元件
- 關於Spring+Mybatis事務管理中資料來源的思考SpringMyBatis
- 美團二面:spring事務不生效的15種場景Spring
- Spring Boot 2.x基礎教程:使用JTA實現多資料來源的事務管理Spring Boot
- Spring是如何支援多資料來源的Spring
- springboot+ mybatisplus+druid 實現多資料來源+分散式事務Spring BootMyBatisUI分散式
- 完蛋,我的事務怎麼不生效?
- 使用Spring Boot配置多個資料來源 - UdithSpring Boot
- Spring基礎系列-Spring事務不生效的問題與迴圈依賴問題Spring
- 談談Spring Boot 資料來源載入及其多資料來源簡單實現Spring Boot
- 定時任務裡面事務不生效問題
- Spring-Boot 多資料來源配置+動態資料來源切換+多資料來源事物配置實現主從資料庫儲存分離Springboot資料庫
- spring-boot-route(十)多資料來源切換Springboot
- 【教程】Spring+Mybatis環境配置多資料來源SpringMyBatis
- spring cloud gateway 不生效SpringCloudGateway
- 多資料來源配置
- SpringBoot多資料來源Spring Boot
- Spring boot 如何快速的配置多個 Redis 資料來源Spring BootRedis
- Spring Boot中的Mongodb多資料來源擴充套件Spring BootMongoDB套件
- Springboot資料庫事務處理——Spring宣告式事務Spring Boot資料庫
- springBoot 多資料來源配置Spring Boot
- springboot多資料來源配置Spring Boot
- MyBatis配置多資料來源MyBatis
- SpringBoot配置多資料來源Spring Boot
- web 配置多資料來源Web