【Java】多数据源报错:NoUniqueBeanDefinitionException

报错

org.springframework.beans.factory.NoUniqueBeanDefinitionException: 
No qualifying bean of type 'org.springframework.transaction.PlatformTransactionManager' available: 
expected single matching bean but found 2: transactionManager,txManager1,txManager2

解决

异常可以看到有两个数据源txManager1和txManager2,但是当前只需要一个。

这个方法需要用到txManager1,将这个数据源放到Transactional注解中。

@Transactional("txManager1")

拓展

@Transactional 注解的关键属性

isolation事务隔离级别,默认为DEFAULT
propagation事务传播机制,默认为REQUIRED
readOnly事务读写性,默认为false
noRollbackFor一组异常类,遇到时不回滚,默认为{}
noRollbackForClassName一组异常类名,遇到时不回滚,默认为{}
rollbackFor一组异常类,遇到时回滚,默认为{}
rollbackForClassName一组异常类名,遇到时回滚,默认为{}
timeout超时时间,以秒为单位
value可选的限定描述符,指定使用的事务管理器,默认为“”
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值