mybatis plus代码生成器(新)的使用

注意事项
1. 代码生成器的依赖需要和mybatis plus的依赖版本相同,对于模板没有要求。
2.
引入依赖

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>

<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
<scope>compile</scope>
</dependency>

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-extension</artifactId>
<version>3.4.3</version>
</dependency>

自用代码

package com.equipment;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;

import java.util.Collections;

/**
* @author xq
* @data 2022/2/23 11:17
*/
public class Code {


// 演示例子,执行 main 方法控制台输入模块表名回车自动生成对应项目目录中

public static void main(String[] args) {
FastAutoGenerator.create("jdbc:mysql://192.168.1.11:3306/qqq?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&allowMultiQueries=true", "root", "root")
.globalConfig(builder -> {
builder.author("xq") // 设置作者
.enableSwagger() // 开启 swagger 模式
.commentDate("yyyy-MM-dd") // 设置注释日期的格式
.fileOverride() // 覆盖已生成文件
.outputDir("D:\\demo\\src\\main\\java"); // 指定输出目录
})
.packageConfig(builder -> {
builder.parent("com.demo") // 设置父包名
// .moduleName("") // 设置父包模块名
.entity("entity.DO") // 设置实体类生成位置,DO不能小写,是关键字
.pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D:\\demo\\src\\main\\java\\com\\demo\\mapper\\mapping\\")); // 设置mapperXml生成路径
})
.strategyConfig(builder -> {
builder.addInclude("t_table1", "t_table2") // 设置需要生成的表名
.addTablePrefix("t_" ) // 设置过滤表前缀,在生成实体类时会将过滤的表前缀去掉
.entityBuilder()// 进入实体类生成配置
.enableLombok()// 开启lombok,默认false
.enableRemoveIsPrefix()// 设置将表中字段的is前缀删除
.enableTableFieldAnnotation()// 开启生成实体时生成字段注解
.formatFileName("%sDo")// 设置生成实体类的文件名后缀
.build()
.serviceBuilder()// 进入服务层生成配置
.formatServiceFileName("%sService")// 设置生成服务层的文件名后缀,不设置的话服务层首字母会添加一个I
.build();
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();

}
}

  

 

上一篇:第25天--算法(Leetcode 91)


下一篇:7-5 倒立勾股数 (100 分)