这个工具,节省80%工作量不过分吧

哈喽,大家好,我是指北君。

俗话说,工具用的好,下班下的早。

Mybatis代码生成器相信大家用过,本篇博客我们来介绍如何一键生成mybatisplus 的相关Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码。可能别人花两天时间完成的代码,你一个小时就搞定了。

1、官方教程
参考文档如下:https://mybatis.plus/guide/generator.html

其实官方教程写的很详细了,这里我在详细的讲解一下官方的文档。

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

①、添加代码生成器依赖

复制
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-generator</artifactId>
    <version>3.3.2</version>
</dependency>
1.
2.
3.
4.
5.
②、添加 模板引擎 依赖

mybatis plus 提供了三种模板引擎,另外也可以通过继承类 com.baomidou.mybatisplus.generator.engine.AbstractTemplateEngine,来自定义模板引擎。

通常我们使用导入默认的依赖就好。

复制
<dependency>
    <groupId>org.apache.velocity</groupId>
    <artifactId>velocity-engine-core</artifactId>
    <version>2.2</version>
</dependency>
1.
2.
3.
4.
5.
3、编写配置
主要包括全局配置GlobalConfig(生成文件的目录,作者名等),数据源配置 DataSourceConfig,模板配置 TemplateConfig。

下面我贴上完整代码,具体可以查看代码解释。

GitHub地址如下:https://github.com/YSOcean/mybatisplusstudy.git

另外,代码中的相关配置可以参考官网:https://mybatis.plus/config/generator-config.html

复制
package com.ys.mybatisplusstudy.generator;
 
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
 
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
 
/**
 * 执行 main 方法控制台输入模块表名回车自动生成对应项目目录中
 */
public class CodeGenerator {
    /**
     * <p>
     * 读取控制台内容
     * </p>
     */
    public static String scanner(String tip){
        Scanner scanner = new Scanner(System.in);
        StringBuilder help = new StringBuilder();
        help.append("请输入" + tip + ":");
        System.out.println(help.toString());
        if (scanner.hasNext()) {
            String ipt = scanner.next();
            if (StringUtils.isNotEmpty(ipt)) {
                return ipt;
            }
        }
        throw new MybatisPlusException("请输入正确的" + tip + "!");
    }
 
    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("IT可乐");
        //是否打开输出目录
        gc.setOpen(false);
        //是否开启 BaseResultMap
        gc.setBaseResultMap(true);
        //是否开启baseColumnList
        gc.setBaseColumnList(true);
        //实体属性 Swagger2 注解
        gc.setSwagger2(true);
        mpg.setGlobalConfig(gc);
 
        // 数据源配置

餐厅介绍

自助餐厅

4.7分
537m | 中航城区冷死你境内呢名
停车 WiFi
  • 热情1
  • 环境好11
  • 服务好12
  • 好极了31
  • 服务热情14

暂时没有看法.. 发表看法请遵守当地法律和制度 (网友评论仅供其表达个人看法,并不表明本站立场。)