Mybatis-plus代码生成器新版本(3.5.1版本及以上)使用记录


mybatis-plus新版本代码生成器使用方法地址
mybatis-plus新版代码生成器配置选项说明地址

请看完背景后考虑是否使用你的情况在考虑是否看完本篇博文吧!

背景说明:

  1. 表已经创建完成了,根据数据表反向创建数据库对象,以及生成controller,service,实体对象,mapper等文件。

添加依赖

MyBatis-Plus 从 3.0.3 之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖:

代码生成器的依赖

<!--mybatis-plus代码生成器依赖-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-generator</artifactId>
    <version>3.5.1</version>
</dependency>

模板引擎依赖

mybatis-plus网站提供了很多的模板引擎,这里选择默认的模板引擎

<!--mybatis-plus生成器模板引擎依赖-->
<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity-engine-core</artifactId>
    <version>2.3</version>
</dependency>

引入swagger依赖(可选)

只是我生成的时候用到了,所以加上,没有用的可以不添加

<!--swagger 接口文档生成工具 依赖-->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>

代码生成

配置结束之后当然就是代码生成了
在项目下随便一个位置,新建一个代码生成器的类,名字可以随意,我这里叫做 CodeGenerator,直接放在了 Java下

在这里插入图片描述

代码如下:

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;

import java.util.Collections;

// 演示例子,执行 main 方法控制台输入模块表名回车自动生成对应项目目录中
public class CodeGenerator {
    public static void main(String[] args) {
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/secound_hand_book", // 这里的路径需要换成你的数据库路径
                "root",
                "123456")
                .globalConfig(builder -> {
                    builder.author("YangYingQi") // 设置作者
                            .enableSwagger() // 开启 swagger 模式。如果开启,需要导入 swagger 的pom依赖
                            .fileOverride() // 覆盖已生成文件
                            //这里需要换成你的路径
                            .outputDir("D:\\projects\\secound-hand-book\\src\\main\\java\\"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("com.graduation.second.hand.book") // 设置父包名
                            .moduleName("system") // 设置父包模块名,也就是最下一层的文件夹名称,他下边就是 controller,service这些目录了
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml,
                                    "D:\\projects\\secound-hand-book\\src\\main\\resources\\" +
                                            "com\\graduation\\second\\hand\\book\\mapper")); // 设置mapperXml生成路径,这里也需要换成你的路径
                })
                .strategyConfig(builder -> {
                    builder
                            // addInclude 和 addExclude 只能使用一个
                            .addInclude("b_order_status", "e_user_address") // 设置需要生成的表名,如果生成全部,可以使用"all"
                            // .addExclude("m_goods_book", "b_order_status", "e_user_address") // 设置要排除的表名
                            .addTablePrefix("b_", "t_", "e_") // 设置过滤表前缀,也就是生成的类名会去掉这个前缀
                            // .addTableSuffix("s")  // 设置过滤表后缀,也就是生成的类名会去掉这个后缀
                    ;
                })
                .execute();

    }
}

其中的路径之类的东西丢需要换成你自己要使用的路径。注意进行替换。

然后点击运行即可,生成成功之后,会自动打开生成的路径的文件夹。

这里只是进行了简单的生成,不过对我来说已经够用了,如果想要更多的个性化的一些配置,请参考代码生成器的配置选项

然后就是,这个生成器生成的代码,只是针对单表的增删改查,如果涉及到多表查询,还是需要自己手动去进行补充的。切记切记。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值