mybatis-plus中多租户字段自动处理(MyBatisPlus报错:Column ‘xxx‘ specified twice)

63 阅读1分钟

文章目录


前言

随着多租户的场景使用变多,避免不了项目中会用到类似多租户的需求,那么当引入了多租户,也就意味着,所有对于表的操作,都要增加上一个租户的限制,那么如何做才能不用再每一个接口上,都加上这个限制呢?
今天来说下这个条件的自动添加方法;


一、实现原理

基于mybatis-plus中的分页插件 PaginationInterceptor的拦截器实现,也就是相当于借用了这个拦截器,对sql进行二次封装,达到在每一个sql语句后边自动拼接上这个租户条件的目的;

二、使用步骤

1.租户工具类

为什么要有这个租户的工具类呢?
因为前端要将当前的租户id传入项目中,作为访问接口的租户限制,如果没有这个工具类,我们就需要在所有接口上加入这个参数,有了这个工具类之后,我们就可以更优雅的实现了;
1 加入一个配置类,失效webmvc的配置,加入拦截器

@Component
public class SaTokenConfigure implements WebMvcConfigurer {


    @Autowired
    AuthInfoInterceptor authInfoInterceptor;

    //放行路径
    private static final String[] EXCLUDE_PATH_PATTERNS = {
        "**/swa

本文转自 jimolvxing.blog.csdn.net/article/det…,如有侵权,请联系删除。