扬帆起航-梦起者

导航

mybatis-plus的代码生成器

 

myvatis-plus代码生成器,可以直接复制执行:

// 代码自动生成器
public class KuangCode {

public static void main(String[] args) {
// 需要构建一个 代码自动生成器 对象
AutoGenerator mpg = new AutoGenerator();
// 配置策略
// 1、全局配置
GlobalConfig gc = new GlobalConfig();
String projectPath = System.getProperty("user.dir");//默认定位到的当前用户目录("user.dir")(即工程根目录),JVM就可以据"user.dir" + "你自己设置的目录" 得到完整的路径(即绝对路径)
gc.setOutputDir(projectPath + "/src/test/java/cn.com.fero");
gc.setAuthor("tangsheng");
gc.setOpen(false);//配置是否打开目录,false 为不打开(可选)
gc.setFileOverride(false); // 是否覆盖
gc.setServiceName("%sService"); // 去Service的I前缀
gc.setIdType(IdType.ID_WORKER);//配置主键生成策略,此处为 ID_WORKER(可选)
gc.setDateType(DateType.ONLY_DATE);//配置日期类型,此处为 ONLY_DATE(可选)
gc.setSwagger2(true);//实体属性 Swagger2 注解,添加 Swagger 依赖,开启 Swagger2 模式(可选)
mpg.setGlobalConfig(gc);
//2、设置数据源
DataSourceConfig dsc = new DataSourceConfig();
dsc.setUrl("");//配置数据库 url 地址
// dsc.setSchemaName("testMyBatisPlus"); // 可以直接在 url 中指定数据库名
dsc.setDriverName("com.mysql.cj.jdbc.Driver");//配置数据库驱动
dsc.setUsername("mxskdev");//配置数据库连接用户名
dsc.setPassword("9FzExm3Bzo");//配置数据库连接密码
dsc.setDbType(DbType.MYSQL);//设定数据库类型
mpg.setDataSource(dsc);
//3、包的配置
PackageConfig pc = new PackageConfig();
pc.setModuleName("core");//配置模块名(需要修改)
pc.setParent("fero.frame");//配置父包名(需要修改)
pc.setEntity("entity");//配置 entity 包名
pc.setMapper("mapper");//配置 mapper 包名
pc.setService("service");//配置 service 包名
pc.setController("controller");//配置 controller 包名
mpg.setPackageInfo(pc);
//4、策略配置
StrategyConfig strategy = new StrategyConfig();
///指定表名(可以同时操作多个表,使用 , 隔开)(需要修改)
//strategy.setInclude("blog_tags", "course", "links", "sys_settings", "user_record", " user_say"); // 设置要映射的表名
strategy.setInclude("firm_city"); // 设置要映射的表名
strategy.setNaming(NamingStrategy.underline_to_camel);//配置数据表与实体类名之间映射的策略
strategy.setColumnNaming(NamingStrategy.underline_to_camel);//配置数据表的字段与实体类的属性名之间映射的策略
strategy.setEntityLombokModel(true); // 自动lombok;
strategy.setRestControllerStyle(true);//配置 rest 风格的控制器(@RestController)
// 配置驼峰转连字符
strategy.setControllerMappingHyphenStyle(true);
// 配置表前缀,生成实体时去除表前缀
// 此处的表名为 test_mybatis_plus_user,模块名为 test_mybatis_plus,去除前缀后剩下为 user。
strategy.setTablePrefix(pc.getModuleName() + "_");
strategy.setLogicDeleteFieldName("deleted");
// 自动填充配置
//TableFill gmtCreate = new TableFill("gmt_create", FieldFill.INSERT);
//TableFill gmtModified = new TableFill("gmt_modified", FieldFill.INSERT_UPDATE);
//ArrayList<TableFill> tableFills = new ArrayList<>();
//tableFills.add(gmtCreate);
//tableFills.add(gmtModified);
//strategy.setTableFillList(tableFills);
// 乐观锁
//strategy.setVersionFieldName("version");
strategy.setRestControllerStyle(true);
strategy.setControllerMappingHyphenStyle(true); //localhost:8080/hello_id_2
mpg.setStrategy(strategy);
mpg.execute(); //执行
}
}

posted on 2022-04-29 10:36  扬帆起航-梦起者  阅读(259)  评论(0编辑  收藏  举报