(2) {{ String[] tableNames = dynamicTableNames.split(",")"> (2) {{ String[] tableNames = dynamicTableNames.split(",")"> (2) {{ String[] tableNames = dynamicTableNames.split(",")">
@Configuration
@MapperScan(basePackages = {"com.ecdigit.mapper", "com.ecdigit.transfer.data.mapper"})
@Slf4j
public class MybatisPlusConfig {

    @Value("${DynamicTableNames}")
    private String dynamicTableNames;

    /**
     * mybatis-plus分页插件,
     * 【看着过时不爽也不能换】
     */
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
        // 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求 默认false
        paginationInterceptor.setOverflow(false);
        // 设置最大单页限制数量,默认 500 条,-1 不受限制
        paginationInterceptor.setLimit(500);
         // 开启 count 的 join 优化,只针对部分 left join
        paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
        DynamicTableNameParser dynamicTableNameParser = new DynamicTableNameParser();
        dynamicTableNameParser.setTableNameHandlerMap(new HashMap<String, ITableNameHandler>(2) {{
            String[] tableNames = dynamicTableNames.split(",");
            log.info("dynamicTableNames长度:"+tableNames.length);
            for(String table:tableNames){
                log.info("当前处理表:{}",table);
                put(table, (metaObject, sql, tableName) -> {
                    String [] strArray = sql.split(" ");
                    List<String> sqlStr = Arrays.asList(strArray);
                    List<String> cases = sqlStr.stream().filter(t->t.contains(table)).collect(Collectors.toList());
                    String caseStr = cases.stream().findAny().orElse(null);
                    if(caseStr!=null){
                        // 判断表名前缀是否多拼,如果待拼接为数字开头,则表名已经拼接好
                        if(SysOperateUtil.isStartWithNumber(caseStr)){
                            return tableName;
                        }else {
                          /*  Long tableSeq = Constant.THREAD_LOCAL_TABLE_SEQ.get();*/
                            //暂时写死默认租户的编码
                            Long tableSeq=1624959287329685504L;
                            if (tableSeq == null) {
                                return tableName;
                            }
                            return tableSeq + "_" + tableName;
                        }
                    }
                    return tableName;
                });
            }
        }});
        paginationInterceptor.setSqlParserList(Collections.singletonList(dynamicTableNameParser));
        return paginationInterceptor;
    }

}
@Configuration
public class MyBatisPlusConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        
        // 添加分页拦截器
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());

        // 添加动态表名拦截器
        DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor();
        // 设置动态表名解析器
        dynamicTableNameInnerInterceptor.setTableNameHandlerMap(Collections.singletonMap("your_table_name", (sql, tableName) -> {
            // 自定义动态表名逻辑
            return "dynamic_" + tableName;
        }));
        interceptor.addInnerInterceptor(dynamicTableNameInnerInterceptor);

        return interceptor;
    }
}