我是靠谱客的博主 天真耳机,最近开发中收集的这篇文章主要介绍Mybatis-plus 代码生成器(新)工具类,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Mybatis-plus 代码生成器(新)工具类

代码生成器大大提高了工作效率,可根据数据库表生成Entity类,Controller类,Service类和实现类,Mapper类和对应的XML文件。

适用版本:mybatis-plus-generator 3.5.1 及其以上版本,对历史版本不兼容!

一、项目中添加依赖(我建的maven工程)


<!--mybatisPlus-->
<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.1</version>
</dependency>
<!-- velocity -->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.3</version>
</dependency>
<!-- freemarker -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.31</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>

二、创建代码生成器工具类

package com.fzshuai.generator;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* mybatis-plus代码生成器
*
* @author fzshuai
* @date 2022/03/13 16:45
* @since 1.0
*/
public class CodeGeneratorApplication {
public static void main(String[] args) {
List<String> tables = new ArrayList<>();
tables.add("t_admin");
// 项目路径
String projectPath = System.getProperty("user.dir");
// 代码生成器
FastAutoGenerator.create("jdbc:mysql://localhost:3306/eoffice_fzs?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai", "root", "123456")
// 全局配置
.globalConfig(builder -> {
// 作者
builder.author("fzshuai")
// 输出路径
.outputDir(projectPath + "/eoffice-generator/src/main/java")
// 禁止打开输出目录
.disableOpenDir()
// 开启swagger
.enableSwagger()
// 注释日期
.commentDate("yyyy/MM/dd HH:mm")
// 开启覆盖之前生成的文件
.fileOverride();
})
.packageConfig(builder -> {
builder.parent("com.fzshuai")
.moduleName("generator")
.entity("pojo")
.service("service")
.serviceImpl("service.impl")
.controller("controller")
.mapper("mapper")
.xml("mapper")
.pathInfo(Collections.singletonMap(OutputFile.mapperXml, projectPath + "/eoffice-generator/src/main/resources/mapper/"));
})
.strategyConfig(builder -> {
builder.addInclude(tables)
// 增加过滤表前缀
.addTablePrefix("t_")
// service策略配置
.serviceBuilder()
.formatServiceFileName("%sService")
.formatServiceImplFileName("%sServiceImpl")
// entity策略配置
.entityBuilder()
// 数据库表映射到实体的命名策略
.naming(NamingStrategy.underline_to_camel)
// 数据库表字段映射到实体的命名策略
.columnNaming(NamingStrategy.no_change)
// 开启lombok模型
.enableLombok()
// controller策略设置
.controllerBuilder()
.formatFileName("%sController")
.enableRestStyle()
.enableHyphenStyle()
// mapper策略设置
.mapperBuilder()
// 生成通用的resultMap
.enableBaseResultMap()
.enableBaseColumnList()
.superClass(BaseMapper.class)
.formatMapperFileName("%sMapper")
.enableMapperAnnotation()
.formatXmlFileName("%sMapper");
})
// 使用Freemarker引擎模板,默认的是Velocity引擎模板
.templateEngine(new FreemarkerTemplateEngine())
.execute();
}
}

最后

以上就是天真耳机为你收集整理的Mybatis-plus 代码生成器(新)工具类的全部内容,希望文章能够帮你解决Mybatis-plus 代码生成器(新)工具类所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部