Mybatis-plus代码生成器(旧版3.5.1以下版本)

目录

前言

一、准备工作

二、简单介绍一下官方文档(不看可以直接跳过看代码)

三、创建工程并maven导入依赖

四、代码生成器

五、总结


前言

给大家介绍一款简便开发的神器,它是由mybatis-plus提供代码生成器,顾名思义就是简便开发,快速完成重复的基础操作,来节省大家的时间

一、准备工作

1.准备好数据库的表和数据

2.准备好maven依赖

3.准好了吗,开始咯!!!

二、简单介绍一下官方文档(不看可以直接跳过看代码)

官方文档(旧版)     官方文档(新版)

我们可以看到官方还是很贴心的,提供效果图和示例

根据官方文档说明,我们可以知道MyBatis-Plus 从 3.0.3 之后移除了代码生成器与模板引擎的默认依赖,需要手动添加相关依赖和默认引擎模板Velocity

三、创建工程并maven导入依赖

建议大家创建springboot工程,我这里测试使用的是maven的空项目,比较麻烦

代码生成器2个依赖加上你的数据库依赖和你的springboot依赖

   <!-- mybatis-plus生成器 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.3.1</version>
        </dependency>

        <!-- mysql -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>

        <!-- velocity模板引擎 -->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.0</version>
        </dependency>

        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.4.5</version>
            <scope>compile</scope>
        </dependency>

增加一个小插曲

如果创建的是maven的空项目,就要加这个springboot依赖,否则就报错

四、代码生成器

根据自己的配置去修改

注意:这里的生成的mapper层是没有@mapper注解的,如果大家使用的使用 mybatis就需要手动加上这个注解,因为mybatis-plus是自动扫描这个mapper层的,就取消了这个注解

import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;


public class Generator {

    public static void main(String[] args) {
        // 代码生成器
        AutoGenerator mpg = new AutoGenerator();

        // 全局配置
        GlobalConfig gc = new GlobalConfig();
        String projectPath = System.getProperty("user.dir"); // 获取当前用户的工作目录
        gc.setOutputDir(projectPath + "/src/main/java"); // 设置生成代码的输出目录
        gc.setAuthor("xiaoyu"); // 设置作者信息
        gc.setOpen(false); // 是否打开生成的文件夹
        gc.setSwagger2(true); // 是否开启实体属性的Swagger2注解
        gc.setServiceName("%sService"); // Service接口的名称格式
        mpg.setGlobalConfig(gc);

        // 数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://localhost:3306/curd?useUnicode=true&useSSL=false&characterEncoding=utf8"); // 数据库连接URL
        dsc.setDriverName("com.mysql.jdbc.Driver"); // 数据库驱动类
        dsc.setUsername("root"); // 数据库用户名
        dsc.setPassword("xiaoyu"); // 数据库密码
        mpg.setDataSource(dsc); // 设置数据源配置

        // 包配置
        PackageConfig pc = new PackageConfig();
        pc.setModuleName("curd"); // 模块名
        pc.setParent("com.test"); // 父包名
        pc.setController("controller"); // Controller包名
        pc.setEntity("entity"); // 实体类包名
        pc.setService("service"); // Service包名
        pc.setMapper("mapper"); // Mapper包名
        pc.setServiceImpl("serviceImpl"); // Service实现类包名
        mpg.setPackageInfo(pc); // 设置包配置

        // 策略配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setNaming(NamingStrategy.underline_to_camel); // 数据库表名到实体类名的命名策略
        strategy.setColumnNaming(NamingStrategy.underline_to_camel); // 数据库字段名到实体类属性名的命名策略
        strategy.setEntityLombokModel(true); // 使用Lombok生成实体类
        strategy.setRestControllerStyle(true); // 生成RestController控制器
        strategy.setSuperEntityColumns("id"); // 超类的字段
        strategy.setInclude(("user").split(",")); // 需要生成的表,多表用,分隔
        strategy.setControllerMappingHyphenStyle(true); // 控制器映射路径中使用连字符风格
        strategy.setTablePrefix(pc.getModuleName() + "_"); // 表名前缀
        mpg.setStrategy(strategy); // 设置策略配置

        // 执行代码生成
        mpg.execute();
    }
}

五、总结

以上就是代码生成器的简单配置,它的功能不仅这些,它还可以帮你一键完成增删改查的操作,我这里没有去写,大家自行查看文档

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小雨527

你的鼓励是我的最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值