MybatisPlus学习的第二天(2)
【摘要】 2.6 代码生成器public static void main(String[] args) { // 代码生成器对象 AutoGenerator mpg = new AutoGenerator(); // 全局配置 GlobalConfig gc = new GlobalConfig(); String project...
2.6 代码生成器
public static void main(String[] args) {
// 代码生成器对象
AutoGenerator mpg = new AutoGenerator();
// 全局配置
GlobalConfig gc = new GlobalConfig();
String projectPath = System.getProperty("user.dir");
//自动生成后输出地址
gc.setOutputDir(projectPath + "/src/main/java");
//作者
gc.setAuthor("jobob");
//生成代码后是否自动打开文件夹
gc.setOpen(false);
//是否覆盖原来生成的
gc.setFileOverride(false);
//去掉service前面的I前缀
gc.setServiceName("%sService");
//设置主键策略
gc.setIdType(IdType.ID_WORKER);
//设置日期时间 仅仅只是日期
gc.setDateType(DateType.ONLY_DATE);
//配置 Swagger2 注解
gc.setSwagger2(true);
mpg.setGlobalConfig(gc);
// 数据源配置
DataSourceConfig dsc = new DataSourceConfig();
dsc.setUrl("jdbc:mysql://localhost:3306/ant?useUnicode=true&useSSL=false&characterEncoding=utf8");
// dsc.setSchemaName("public");
dsc.setDriverName("com.mysql.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("密码");
//设置数据库类型,此处举例为mysql
dsc.setDbType(DbType.MYSQL);
mpg.setDataSource(dsc);
// 包配置
PackageConfig pc = new PackageConfig();
pc.setModuleName("模块名");
pc.setParent("com.baomidou.ant");
pc.setEntity("entity");//设置实体类包名称
pc.setMapper("mapper");//mapper包名
pc.setService("service");//service包名
pc.setController("controller");//controller包名
mpg.setPackageInfo(pc);
// 策略配置
StrategyConfig strategy = new StrategyConfig();
//生成哪张表
strategy.setInclude("表名1","表名2");
//配置下划线转驼峰命名
strategy.setNaming(NamingStrategy.underline_to_camel);
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
//设置是否使用lombok
strategy.setEntityLombokModel(true);
//设置是否按rest风格
strategy.setRestControllerStyle(true);
//设置逻辑删除 数据库中需要有这个字段才设置这个
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");
//设置controller restful风格的驼峰命名
strategy.setRestControllerStyle(true);
//设置请求连接 多个参数时的下划线表示 eg:localhost:8080/test_id_name_XXX
strategy.setControllerMappingHyphenStyle(true);
strategy.setTablePrefix(pc.getModuleName() + "_");
mpg.setStrategy(strategy);
//执行
mpg.execute();
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)