当前位置:首页 > 编程笔记 > 正文
已解决

springboot项目多数据源导致事务报错问题

来自网友在路上 168868提问 提问时间:2023-10-23 22:17:10阅读次数: 68

最佳答案 问答题库688位专家为你答疑解惑

springboot项目多数据源导致事务报错问题

  • 序言
  • 报错日志
  • 报错原因
  • 解决办法
  • 序言

序言

之前有一篇讲了如何使用多数据源动态配置,这里遇到的一个问题和大家分享,在使用多数据源时,对数据进行更新和插入避免不了使用事务,使用多数据源可能导致下面的事务报错,分享给大家。

报错日志

下面是截取的部分报错日志
// An highlighted block
2023-10-19 11:26:04.893 ERROR [http-nio-8101-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet] 175 - Servlet.service() for servlet [dispatcherServlet] in context with path [/api] threw exception [Request processing failed; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException:  No qualifying bean of type 'org.springframework.transaction.TransactionManager' available: expected single matching bean but found 4: 
c3reportTransactionManager,commonconfigTransactionManager,configimportTransactionManager,ctaTransactionManager] with root cause

报错日志

报错原因

报错原因为:配置动态多数据源导致事务处理不知道走哪一个TransactionManager,看图
原因图:多数据源动态配置
动态多数据源配置
事务使用

解决办法

解决办法相对简单,找到使用事务的地方,在Transactional注解内加入 transactionManager = "xxxTransactionManager" ,指向对应的事务就可以了,具体看图。

解决办法

序言

不是职业博主,只是记录自己用到的一些技术点或者问题相关的解决办法,以便于以后用到的时候查看,顺便分享。
查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"springboot项目多数据源导致事务报错问题":http://eshow365.cn/6-22752-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!