MyBatis-Plus 动态表名SQL解析器的实现
先来说下动态名表在什么场景下需要使用呢?所以数据库设计的时候可以一家医院对应一张表,分开来存储,表中的列名都是一样的,只是表名不同。或者还可以做日志的存储,日志数据量也是很大的,可以分一个月对应一张表,比如:log_201907、log_201908等等之类的。动态表名SQL解析器也是基于MP分页插件来实现的,代码如下:代码演示:MP会针对配置的表名做动态解析,从sql中可以看出表名已经替换成sys_user_2019了。如下代码使用了@SqlParser注解来过滤这条sql不需要加租户ID,执行这条sql的时候同样也会把动态表名SQL解析也会过滤掉,按照实际表名处理,MP可能后续版本会进行改进。
用户评论