深圳网站关键词优化公司,网站做乘法表,怎么建设一个社交网站,百度seo标题优化软件mybatis plus简介详见mybatis plus的官网业务要求业务上要求存储数据的时候根据某个字段动态的选择数据要存储的表.如根据code字段: code-[1001,1002]来进行选择存储的表:经过下面的配置实现动态表名如 -- table1_1001,table_1002的效果.以此动态生成表名的效果.具体实…mybatis plus简介详见mybatis plus的官网业务要求业务上要求存储数据的时候根据某个字段动态的选择数据要存储的表.如根据code字段: code-[1001,1002]来进行选择存储的表:经过下面的配置实现动态表名如 -- table1_1001,table_1002的效果.以此动态生成表名的效果.具体实现MPConfig.javaimport com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import com.baomidou.mybatisplus.extension.parsers.DynamicTableNameParser;import com.baomidou.mybatisplus.extension.parsers.ITableNameHandler;import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;import org.apache.ibatis.reflection.MetaObject;import org.mybatis.spring.annotation.MapperScan;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.Collections;import java.util.HashMap;import java.util.List;/*** Author: xuzz* Description:* Date: Created in 上午11:22 19-10-12* Modified By:*/ConfigurationMapperScan(com.dao)public class MPConfig {Autowiredprivate Tables tableNames;/*** Author: xuzz* Date: 上午11:46 19-10-12* 动态表名*/Beanpublic PaginationInterceptor paginationInterceptor(){PaginationInterceptor paginationInterceptor new PaginationInterceptor();DynamicTableNameParser dynamicTableNameParser new DynamicTableNameParser();dynamicTableNameParser.setTableNameHandlerMap(new HashMap(2){{//涉及表集合List tables tableNames.getTableNames();//动态表规则 初始表名_codetables.forEach(tableTitle - put(tableTitle,(metaObject, sql, tableName) - tableName _ String.valueOf(getParamValue(关键字段名,metaObject))));}});paginationInterceptor.setSqlParserList(Collections.singletonList(dynamicTableNameParser));return paginationInterceptor;}/*** Author: xuzz* Date: 下午2:55 19-10-12* 获取参数值*/private Object getParamValue(String title, MetaObject metaObject){//获取参数Object originalObject metaObject.getOriginalObject();JSONObject originalObjectJSON JSON.parseObject(JSON.toJSONString(originalObject));JSONObject boundSql originalObjectJSON.getJSONObject(boundSql);JSONObject parameterObject boundSql.getJSONObject(parameterObject);return parameterObject.get(title);}Tables.java 表头列表类ConfigurationConfigurationProperties(mp)public class Tables {private List tableNames;public List getTableNames() {return tableNames;}public void setTableNames(List tableNames) {this.tableNames tableNames;}}application.ymlmp:tableNames: #表头列表- table1- table2- table3其他基础配置的无异到此这篇关于mybatis plus 的动态表名的配置详解的文章就介绍到这了,更多相关mybatis plus 动态表名配置内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程原文链接https://blog.csdn.net/XuZZ94/article/details/102547671