随着多租户的场景使用变多,避免不了项目中会用到类似多租户的需求,那么当引入了多租户,也就意味着,所有对于表的操作,都要增加上一个租户的限制,那么如何做才能不用再每一个接口上,都加上这个限制呢?
今天来说下这个条件的自动添加方法;
基于mybatis-plus中的分页插件 PaginationInterceptor的拦截器实现,也就是相当于借用了这个拦截器,对sql进行二次封装,达到在每一个sql语句后边自动拼接上这个租户条件的目的;
为什么要有这个租户的工具类呢?
因为前端要将当前的租户id传入项目中,作为访问接口的租户限制,如果没有这个工具类,我们就需要在所有接口上加入这个参数,有了这个工具类之后,我们就可以更优雅的实现了;
1 加入一个配置类,失效webmvc的配置,加入拦截器
@Component
public class SaTokenConfigure implements WebMvcConfigurer {
@Autowired
AuthInfoInterceptor authInfoInterceptor;
//放行路径
private static final String[] EXCLUDE_PATH_PATTERNS = {
"**/swa