1、需要额依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.6</version>
</parent>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- mybatis-plus依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<!-- mybatis-plus生成器依赖 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.2</version>
</dependency>
<!-- 模板引擎 -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
</dependency>
</dependencies>
2、代码生成前的准备好需要创建的目录
3、yml配置数据源
spring:
datasource:
username: root
password: 1234
url: jdbc:mysql:///db2109
4、在测试类准备代码生成器的代码
public class MybatisPlusTest {
public static void main(String[] args) {
//jdbc:mysql:///db2109 这里第三个 '/' 代表本地路径
String url = "jdbc:mysql:///db2109";
String username = "root";
String password = "1234";
String author = "kgc"; // 作者名
String outputDir = "D:\\java\\idea\\woorkspace\\emp-sys-admin\\src\\main\\java";//生成在指定路径下
String parent = "cn.hai";//规定包下 父包名
String moduleName = "emp";//模块名
//mapper.xml文件的生成位置 是根路径
String outputFile = "D:\java\idea\woorkspace\mybatis-puls\src\main\resources\mapper\" + moduleName;
List<String> tables = Arrays.asList("emp");//链接的数据库表面可以链接多个
String prefix = "";//去掉表的前缀
FastAutoGenerator.create(url, username, password)
.globalConfig(builder -> {
builder.author(author) // 设置作者
//.enableSwagger() // 开启 swagger 模式
//.fileOverride() // 覆盖已生成文件
.outputDir(outputDir); // 指定输出目录
})
.packageConfig(builder -> {
builder.parent(parent) // 设置父包名
.moduleName(moduleName) // 设置父包模块名
.pathInfo(Collections.singletonMap(OutputFile.xml, outputFile)); // 设置mapperXml生成路径
})
.strategyConfig(builder -> {
builder.addInclude(tables) // 设置需要生成的表名
.addTablePrefix(prefix); // 设置过滤表前缀
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();
}
}
5、看看效果