@Transactional导致动态数据源失效 您所在的位置:网站首页 湖南省郴州市嘉禾县邮编号 @Transactional导致动态数据源失效

@Transactional导致动态数据源失效

#@Transactional导致动态数据源失效| 来源: 网络整理| 查看: 265

文章目录 视频地址问题描述解决方案

视频地址

https://www.bilibili.com/video/BV1Qs4y1h7wV/

问题描述

今天遇到一个动态数据源配置失效的问题,发现是因为动态数据源配置的方法嵌套在了@Transactional注释的方法内,因为已经开启了事务,所以此时的数据源切换不生效。 大致问题回顾如下:

第一个方法未加事务注解前,通过代理类调用下方的getUser【有切换数据源】的方法,能正确进行数据源切换,查出不同的结果 在这里插入图片描述但是当第一个方法添加事务注解后,数据源的切换就失效了,都用的默认数据源,如下: 在这里插入图片描述 解决方案

需要切换数据源的方法也加上一个事务注解,并设置事务的传播方式为 REQUIRES_NEW 【不管存不存在事务,都开启新事务】,因为开启了新的事务,所以此时数据源的切换可以正常完成 在这里插入图片描述 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有