MyBatis-Plus代码生成器使用

发布时间:2024年01月16日

第一章、添加依赖

mybatis-plus-generator依赖和velocity-engine-core依赖和commons-lang3依赖加到pom文件里面,代码生成器会用到

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.4.0</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.0</version>
        </dependency>
        
         <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.5</version>
        </dependency>

第二章、准备CodeGenerator类

新建一个CodeGenerator类,在里面配置生成代码需要的信息

package com.icbc.coresd.util;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.TemplateConfig;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;

public class CodeGenerator {
    public static void main(String[] args) {
        AutoGenerator mpg = new AutoGenerator();

        // 数据源配置
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://xxx.xx.xxx:3306/sdtools?useUnicode=true&characterEncoding-utf-8&useSSL=false&serverTimezone=UTC");
        dsc.setDriverName("com.mysql.jdbc.Driver");
        dsc.setUsername("数据库账号");
        dsc.setPassword("数据库密码");
        mpg.setDataSource(dsc);

        // 全局配置
        GlobalConfig gc = new GlobalConfig();
        //代码输出的目录在java下
        gc.setOutputDir(System.getProperty("user.dir") + "/src/main/java/");
        gc.setAuthor("作者名称");
        gc.setOpen(false);
        //每次生成代码的时候是否重置
        gc.setFileOverride(false);
        //主键自增长
        gc.setIdType(IdType.AUTO);
        gc.setDateType(DateType.ONLY_DATE);
        mpg.setGlobalConfig(gc);

        // 包配置
        PackageConfig pc = new PackageConfig();
        //在目录的哪个包下
        pc.setParent("com.xxxx.core");
        mpg.setPackageInfo(pc);

        // 策略配置
        StrategyConfig strategy = new StrategyConfig();
        //下划线转驼峰
        strategy.setNaming(NamingStrategy.underline_to_camel);
        strategy.setColumnNaming(NamingStrategy.underline_to_camel);
        strategy.setEntityLombokModel(true);
        strategy.setRestControllerStyle(true);
        strategy.setControllerMappingHyphenStyle(true);
        strategy.setTablePrefix(pc.getModuleName() + "_");
        mpg.setStrategy(strategy);

        // 模板配置
        TemplateConfig templateConfig = new TemplateConfig();
        templateConfig.setXml(null);
        mpg.setTemplate(templateConfig);

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

第三章、右键运行main方法

在CodeGenerator类中配置代码生成的设置后,右键运行main方法后,Mybatis-Plus会识别这个类,并根据类中的设置生成相应代码。生成的代码包括:entity类,接口,实现类等。里面具体的配置写了注释,如果想弄懂每个配置的含义,可以把每个配置拿去查一下具体的含义。

文章来源:https://blog.csdn.net/baomingshu/article/details/135634068
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。