最近在使用seata和alibaba springcloud
因为需要做数据源动态切换,所以不让seata做数据源代理,而是自己配置bean。

@Bean("dataSourceProxy")@Primarypublic DataSourceProxy dataSourceProxy(@Qualifier("routingDataSource") DataSource routingDataSource) {return new DataSourceProxy(routingDataSource);}

但是会在启动时出错:

io.seata.common.exception.ShouldNeverHappenException: Auto proxy of DataSource can't be enabled as you've created a DataSourceProxy bean.Please consider removing DataSourceProxy bean or disabling auto proxy of DataSource.

这就是个自动代理数据源导致的,照理说关掉就可以了,网上各种说法都是在启动类加上注解:
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
然而并没有什么用,我用的是durid连接池,所以把DruidDataSourceAutoConfigure.class也exclude了,但是还是没用。
后面看了下源码,是通过读取yml配置的,神坑就在这里,正常配置:

#seata配置
seata:enabled: trueenable-auto-data-source-proxy: false

这里的enable-auto-data-source-proxy就是表示不使用自动代理数据源,但是一直无效,最后在源码SeataAutoConfiguration中发现,这种写法是不生效的,需要写成:

#seata配置
seata:enabled: trueenableAutoDataSourceProxy: false

。。。。。。。。!!

seata神坑,enableAutoDataSourceProxy无法关闭相关推荐

  1. spring cloud 集成 seata 分布式事务

    spring cloud 集成 seata 分布式事务 基于 seata-server 1.6.x 序言 下载 seata-server 准备一个数据库 seata 专门为 seata-server ...

  2. seata的部署和集成

    一.部署Seata的tc-server 1.下载 首先我们要下载seata-server包,地址在http://seata.io/zh-cn/blog/download.html 当然,课前资料也准备 ...

  3. seata的部署与微服务集成(包含多集群异地容灾配置)

    seata的部署与微服务集成 一.部署Seata的tc-server 1.下载与安装 2.配置文件详细讲解 3.创建数据库表 4.启动 二.微服务集成seata 1.引入依赖 2.修改配置文件 3.启 ...

  4. Springcloud+Seata+nacos 分布式事务项目搭建 AT模式

    前言 本文要求对Springcloud有一定了解,对分布式事务本身有一定认知,如果不了解微服务,建议先看看Spring Cloud的基本认识和使用Spring Cloud的基本教程,再回头学习本文 为 ...

  5. 分布式事务框架Seata的使用

    1. 分布式事务入门 事务必须具有的四个特性分别是:原子性(atomicity).一致性(consistency).隔离性(isolation,又称独立性)以及持久性(durability).这就是事 ...

  6. 【学习笔记】seata快速应用(seata版本1.4.2)

    1.先下载seata 下载中心 2.解压得到如下结构 3.修改conf目录下的registry.conf文件 修改内容如下: registry {   # tc服务的注册中心类,这里选择nacos,也 ...

  7. 使用Seata解决分布式事务以及Seata的安装、配置和使用

    目录 事务的介绍 什么是本地事务? 分布式事务 分布式事务解决方案之seata Seata介绍 Seata是什么 Seata的分布式事务解决方案 Seata的核心组件 AT模式的工作流程 一阶段 二阶 ...

  8. seata安装、使用、测试和分布式事务演示

    分布式事务 随着互联网的快速发展,软件系统由原来的单体应用转变为分布式应用 分布式系统会把一个应用系统拆分为可独立部署的多个服务,因此需要服务与服务之间远程协作才能完成事务操作,这种分布式系统环境下由 ...

  9. MySQL(十一):分库分表方案-ShardingSphere

    Sharding-JDBC Sharding-JDBC定位为轻量级Java框架,在Java的JDBC层提供的额外服务.可理解为增强版的JDBC驱动,完全兼容JDBC和各种ORM 框架的使用 Shard ...

最新文章

  1. 使用cat /proc/进程id/maps 查看进程内存映射
  2. R语言使用ggplot2可视化互相覆盖的直方图实战(Overlaying histograms)
  3. 005 Android之数据存储
  4. 【面试】编译器为我们实现了几个类成员函数?(c++)
  5. 改善EF代码的方法(下)
  6. OpenGL 深度测试depth test 的实例
  7. [网络安全提高篇] 一一〇.强网杯CTF的Web Write-Up(上) 寻宝、赌徒、EasyWeb、pop_master
  8. SpringBoot项目使用微服务后在Service窗口启动应用后不显示端口号
  9. 数据库:mysql 获取刚插入行id[转]
  10. 共话5G产业创新 5G+视频彩铃产业联盟成立
  11. 团队作业4——第一次项目冲刺(Alpha版本)4.23
  12. C#仿““狗屁不通文章生成器””功能
  13. 莫烦python学习笔记
  14. 什么是拖库,撞库和洗库
  15. less css基础教程
  16. WPCMS插件自动采集发布文章WordPress插件
  17. 微信公众号批量打标签的自动化实现方法
  18. hive 数据类型 java_Hive数据类型
  19. 我在MTK平台下调试音频ALSA
  20. 批量部署stg Pool到生产脚本

热门文章

  1. 源码之 Retrofit
  2. python 开发视频播放网站_python开发微电影视频网站教程附源码
  3. 网页导航栏 html + css的代码实现
  4. 基于STM32设计智能家居控制系统(OneNet)_2022
  5. 推荐10本EEG领域值得阅读的书籍
  6. 需求定律的4个准则——《可以量化的…
  7. 天顶围棋 8 zenith 8_世界围棋冠军数排名TOP10:李昌镐第一 古力柯洁并列第4
  8. 这次经济危机的一些看法
  9. 我使用过的拼音输入法
  10. SaaS-HRM(3)企业部门管理前后台