JeecgBoot开发多租户SAAS数据隔离,查询数据库,改造多租户后 Mybatis-plus 查询数据库的SQL语句tenant-id[租户Id] 一直为0
Posted 蓝匣子itbluebox
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JeecgBoot开发多租户SAAS数据隔离,查询数据库,改造多租户后 Mybatis-plus 查询数据库的SQL语句tenant-id[租户Id] 一直为0相关的知识,希望对你有一定的参考价值。
JeecgBoot开发多租户SAAS查询数据或者对外开发接口的时候会自动进行数据隔离
1、登录状态的情况下
从登录状态当中获取最新的tenantId
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String tenantId = loginUser.getTenantId();
从header当中获取
String tenantId = req.getHeader("tenant-id");
在查询数据库的Service和Mapper之前设置
TenantContext.setTenant(tenantId);
xxService.list();
TenantContext.setTenant(tenantId);
xxMapper.list();
2、直接可以从前端的传入的参数当中获取tenantId
TenantContext.setTenant(tenantId);
xxService.list();
TenantContext.setTenant(tenantId);
xxMapper.list();
以上是关于JeecgBoot开发多租户SAAS数据隔离,查询数据库,改造多租户后 Mybatis-plus 查询数据库的SQL语句tenant-id[租户Id] 一直为0的主要内容,如果未能解决你的问题,请参考以下文章