依赖
<!--mybatis plus代码生成-->
<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>
</dependency>
<!--mybatis plus启动-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
依赖如果出现报错,改一下版本就行,因为咱两的JDK版本可能不一样,该版本JDK1.8以上都好使
核心生成代码
package com.yxh.config;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
/**
* @Author:yxh
* @name:CodeGenerator
*/
@Configuration
public class CodeGenerator {
/** 连接JDBC路径*/
@Value("${spring.datasource.url}")
private String url;
/** 数据库 用户名*/
@Value("${spring.datasource.username}")
private String username ;
/** 数据库 密码*/
@Value("${spring.datasource.password}")
private String password;
/** 作者*/
@Value("${gen.author")
private String author;
// 使用 FastAutoGenerator 快速配置代码生成器
FastAutoGenerator.create(url,username, password)
.globalConfig(builder -> {
builder.author(author) // 设置作者
.outputDir("D:\\"); // 输出目录 你要生成的路径
})
.packageConfig(builder -> {
builder.parent("com.yxh") // 设置父包名
.entity("domain") // 设置实体类包名
.mapper("mapper") // 设置 Mapper 接口包名
.service("service") // 设置 Service 接口包名
.serviceImpl("service.impl") // 设置 Service 实现类包名
.xml("mpper.xml"); // 设置 Mapper XML 文件包名
})
.strategyConfig(builder -> {
builder.addInclude("user") // 设置需要生成的表名 生成多表通过','隔开
.entityBuilder()
.enableLombok() // 启用 Lombok
.enableTableFieldAnnotation() // 启用字段注解
.controllerBuilder()
.enableRestStyle(); // 启用 REST 风格
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用 Freemarker 模板引擎
.execute(); // 执行生成
}
}
配置
# spring配置
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://IP:3306/表名?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: 密码
# mybatis配置
mybatis-plus:
# 搜索指定包别名
typeAliasesPackage: com.yxh.generate.domain
# 配置mapper的扫描,找到所有的mapper.xml映射文件
mapperLocations: classpath:mapper/**/*.xml
# 代码生成
gen:
# 作者
author: yxh
# 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
packageName: com.sk.system
# 自动去除表前缀,默认是false
autoRemovePre: false
总结:
同样也可以通过idea自带的插件进行生成,到时候,只用点点点就OK啦,等过两天我再发一篇用idea操作的,每天都是猿气满满