参考: blog.csdn.net/weixin_4574…
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import org.springframework.beans.factory.annotation.Value;
import java.util.Collections;
public class MybatisCodeGenerator {
public void genCode() {
String projectPath = System.getProperty("user.dir"); //获取当前系统路径
FastAutoGenerator.create("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&useSSL=false"
, "test", "123456")
.globalConfig(builder ->
builder.author("test") // 设置作者
.disableOpenDir()
.enableSwagger() // 开启 swagger 模式
.fileOverride() // 覆盖已生成文件
.outputDir(projectPath + "/src/main/java")// 指定输出目录
.dateType(DateType.TIME_PACK)
)
.packageConfig(builder ->
builder.parent("com.test") // 设置父包名
.moduleName("test") // 设置父包模块名
.entity("model.entity")
// 设置mapperXml生成路径
.pathInfo(Collections.singletonMap(OutputFile.mapperXml,projectPath + "/src/main/resources/mapper"))
)
.strategyConfig(builder ->
builder.addInclude("tablename") // 设置需要生成的表名
.addTablePrefix("t_", "c_") // 设置过滤表前缀
.entityBuilder() //实体类配置
.enableLombok()
.enableTableFieldAnnotation()//实体类字段注解
.controllerBuilder()//controller配置
.enableRestStyle()//开启restcontroller
)
.execute();
}
public static void main(String... args) {
MybatisCodeGenerator mybatisCodeGenerator = new MybatisCodeGenerator();
mybatisCodeGenerator.genCode();
}
}