如何通过注解实现ShardingJdbc对复杂SQL的支持?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2675个文字,预计阅读时间需要11分钟。
目录+背景介绍+问题复现+解决思路+具体实现+编写autoConfig+类+自定义数据源+aop+拦截器:aop+切面定义+ThreadLocal+启动类配置+背景介绍+公共最近做分库分表业务,接入Sharding JDBC。
目录
- 背景介绍
- 问题复现
- 解决思路
- 具体实现
- 编写autoConfig 类
- 自定义数据源
- aop 拦截器:
- aop 切面定义
- ThreadLocal
- 启动类配置
背景介绍
公司最近做分库分表业务,接入了 Sharding JDBC,接入完成后,回归测试时发现好几个 SQL 执行报错,关键这几个表都还不是分片表。
报错如下:
这下糟了嘛。熟悉 Sharding JDBC 的同学应该知道,有很多 SQL 它是不支持的。官方截图如下:
如果要去修改这些复杂 SQL 的话,可能要花费很多时间。那怎么办呢?只能从 Sharding JDBC 这里找突破口了,两天的研究,出来了下面这个只需要加一个注解轻松解决 Sharding Jdbc 不支持复杂 SQL 的方案。
本文共计2675个文字,预计阅读时间需要11分钟。
目录+背景介绍+问题复现+解决思路+具体实现+编写autoConfig+类+自定义数据源+aop+拦截器:aop+切面定义+ThreadLocal+启动类配置+背景介绍+公共最近做分库分表业务,接入Sharding JDBC。
目录
- 背景介绍
- 问题复现
- 解决思路
- 具体实现
- 编写autoConfig 类
- 自定义数据源
- aop 拦截器:
- aop 切面定义
- ThreadLocal
- 启动类配置
背景介绍
公司最近做分库分表业务,接入了 Sharding JDBC,接入完成后,回归测试时发现好几个 SQL 执行报错,关键这几个表都还不是分片表。
报错如下:
这下糟了嘛。熟悉 Sharding JDBC 的同学应该知道,有很多 SQL 它是不支持的。官方截图如下:
如果要去修改这些复杂 SQL 的话,可能要花费很多时间。那怎么办呢?只能从 Sharding JDBC 这里找突破口了,两天的研究,出来了下面这个只需要加一个注解轻松解决 Sharding Jdbc 不支持复杂 SQL 的方案。

