package com.example.springboot_demo;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.rules.DbType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import org.junit.Test;
/**
* 类名称:GeneratorTest
* 类描述:TODO
* 创建人:筱
* 创建时间:
* Version 1.0
*/
public class GeneratorTest {
@Test
public void generateCode() {
/*包名*/
String packageName = "com.example.springboot_demo";
/*表名*/
generateByTables(packageName, "test_a");
}
private void generateByTables(boolean serviceNameStartWithI, String packageName, String... tableNames) {
GlobalConfig config = new GlobalConfig();
/*数据连接地址和数据库名*/
String dbUrl = "jdbc:mysql://localhost:3306/test1?serverTimezone=GMT";
DataSourceConfig dataSourceConfig = new DataSourceConfig();
/*连接的数据库类型:mysql,sqlserver等*/
dataSourceConfig.setDbType(DbType.MYSQL)
/*数据库地址*/
.setUrl(dbUrl)
/*mysql账号*/
.setUsername("root")
/*mysql密码*/
.setPassword("")
.setDriverName("com.mysql.cj.jdbc.Driver");
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig
.setCapitalMode(true)
.setEntityLombokModel(false)
.setDbColumnUnderline(true)
.setNaming(NamingStrategy.underline_to_camel)
.setTablePrefix("sys_", "qd_")// 此处可以修改为您的表前缀
.setEntityColumnConstant(false) // 生成字段常量
.setInclude(tableNames); // 修改替换成你需要的表名,多个表名传数组
config.setActiveRecord(false)
.setEnableCache(false) // XML 二级缓存
.setBaseResultMap(true)
.setBaseColumnList(true)
.setAuthor("xiaoZe") //作者
.setOutputDir("D:\\Config") //输出目录
.setFileOverride(true);
if (!serviceNameStartWithI) {
config.setServiceName("%sService");
}
new AutoGenerator()
.setTemplateEngine(new FreemarkerTemplateEngine())
.setGlobalConfig(config)
.setDataSource(dataSourceConfig)
.setStrategy(strategyConfig)
.setPackageInfo(
new PackageConfig()
.setParent(packageName)
.setController("controller") //控制层所在的包名
.setEntity("entity") //实体类所在的包名
).execute();
}
private void generateByTables(String packageName, String... tableNames) {
generateByTables(true, packageName, tableNames);
}
}
最简便的反向类生成方法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 个人专题目录 Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。下...