1. 编写一个拦截器,重写 SqlParserInterceptor 的 isShouldGenerateTenantId() 方法:java public class M...
public String getTenantIdColumn() { return SYSTEM_TENANT_ID; } @Override public boolean doTableFilter(String tableName) { // 忽略掉一些表:如租户表(provider)本身不需要执行这样的处理。 return IGNORE_TENANT_TABLES.stream().anyMatch((e) -> e.equalsIgnoreCase(tableName)); } }); paginationInterce...
public boolean ignoreTable(String tableName) { List<String> ignoreTables = tenantProperty.getIgnoreTables(); if (ignoreTables.contains(tableName)){ return true; } return false; } // 不处理的非租户列的insert // @Override // public boolean ignoreInsert(List<Column> columns, String tenantIdColu...
1.登录可自带数据隔离,其中 tenant_id 为隔离字段,在需要隔离的数据库表里定义,但是不能在代码里写 setTenantId(xxx)这样的东西,这样会让你的sql列重复! 但是有些场景在保存时候,不需要tenant_id ,这种表需要加载 IGNORE_TENANT_TABLES 里 2.加载完配置类 globalConfig.setMetaObjectHandler(newMetaHandler()); ...
private Long getCurrentTenantId() { return 1l; } @Override public String getTenantIdColumn() { return "tenant_id"; // 指定租户字段名 } @Override public boolean ignoreTable(String tableName) { // 可以配置忽略的表,如果某些表不需要进行租户隔离,可以在这里配置 ...
interceptor.addInnerInterceptor(newTenantLineInnerInterceptor(newTenantLineHandler() {@OverridepublicExpressiongetTenantId(){returnnewLongValue(1); }// 这是 default 方法,默认返回 false 表示所有表都需要拼多租户条件@OverridepublicbooleanignoreTable(String tableName){return!"user".equalsIgnoreCase(tableName);...
#log-impl:org.apache.ibatis.logging.stdout.StdOutImplcall-setters-on-nulls:truemap-underscore-to-camel-case:trueuse-generated-keys:truedefault-fetch-size:100default-statement-timeout:30mapper-locations:classpath*:/**/**Mapper.xmltenantIgnoreTable:ac_book,ac_book_item,ac_dict,ac_family,ac_frien...
1、在gitegg-platform-mybatis工程下新建多租户组件配置文件TenantProperties.java和TenantConfig.java,TenantProperties.java用于系统读取配置文件,这里会在Nacos配置中心设置多组户的具体配置信息,TenantConfig.java是插件需要读取的配置有三个配置项: TenantId租户ID、TenantIdColumn多租户的字段名、ignoreTable不需要多租户...
默认是tenant_idreturnTenantLineHandler.super.getTenantIdColumn();}@OverridepublicbooleanignoreTable(...
1、在gitegg-platform-mybatis工程下新建多租户组件配置文件TenantProperties.java和TenantConfig.java,TenantProperties.java用于系统读取配置文件,这里会在Nacos配置中心设置多组户的具体配置信息,TenantConfig.java是插件需要读取的配置有三个配置项: TenantId租户ID、TenantIdColumn多租户的字段名、ignoreTable不需要多租户...