mybatis-plus-generator代码生成器

mybatis-plus-generator版本3.5.2
mybatis-plus版本3.5.2
maven依赖

 <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>2.2</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.alibaba/druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.7</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>自己mysql的版本</version>
</dependency>

注释啥的都在里面,当然也可以去参考官方文档mybatis-plus

CodeGenerator.java

package com.mqb.tiaotiao.config;

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.converts.MySqlTypeConvert;
import com.baomidou.mybatisplus.generator.config.querys.MySqlQuery;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.keywords.MySqlKeyWordsHandler;

/**
 * @author maqingbo
 */
public class CodeGenerator {
    
    

    public static final DataSourceConfig DATA_SOURCE_CONFIG = new DataSourceConfig.Builder("jdbc:mysql://127.0.0.1:3306/blog", "root", "root")
            .dbQuery(new MySqlQuery())
            .schema("blog")
            .typeConvert(new MySqlTypeConvert())
            .keyWordsHandler(new MySqlKeyWordsHandler())
            .build();

    public static void main(String[] args) {
    
    
        // 代码生成器
        AutoGenerator autoGenerator = new AutoGenerator(DATA_SOURCE_CONFIG);
        // 全局配置
        String projectPath = System.getProperty("user.dir");

        GlobalConfig globalConfig = new GlobalConfig.Builder()
                .fileOverride()
                .outputDir(projectPath+"\\tiaotiao\\src\\main\\java")
                .author("qingbo.ma")
//                .enableKotlin()
//                .enableSwagger()
                .dateType(DateType.TIME_PACK)
                .commentDate("yyyy-MM-dd")
                .build();
        autoGenerator.global(globalConfig);


        // 包配置
        PackageConfig packageConfig = new PackageConfig.Builder()
                //父包名
                .parent("com.mqb.tiaotiao")
                //	Mapper 包名
                .mapper("mapper")
                //Mapper XML 包名
                .xml("mapper.xml")
                //Entity 包名
                .entity("pojo")
                //Service 包名
                .service("service")
                //Service Impl 包名
                .serviceImpl("service.impl")
                //Controller 包名
                .controller("controller")
                .build();
        autoGenerator.packageInfo(packageConfig);

//        //模板配置(TemplateConfig)
//        TemplateConfig templateConfig = new TemplateConfig.Builder()
//                .disable(TemplateType.ENTITY)
//                .entity("/templates/entity.java")
//                .service("/templates/service.java")
//                .serviceImpl("/templates/serviceImpl.java")
//                .mapper("/templates/mapper.java")
//                .controller("/templates/controller.java")
//                .build();
//        autoGenerator.template(templateConfig);

        // 策略配置
        StrategyConfig strategyConfig = new StrategyConfig.Builder()
                .enableCapitalMode()
                .enableSkipView() //	开启跳过视图
                .disableSqlFilter()
//                .likeTable(new LikeTable("USER"))
                .addInclude("b_user_account")
                .addTablePrefix("b_")
//                .addFieldSuffix("_flag") //增加过滤字段后缀
                .entityBuilder()
                .addIgnoreColumns()
                //	设置父类
                .superClass(Object.class)
                //开启lombok
                .enableLombok()
                .mapperBuilder()
                .enableMapperAnnotation()
                .controllerBuilder()
                .enableRestStyle()//开启驼峰转连字符
                .build();
        autoGenerator.strategy(strategyConfig);
        // Entity 策略配置

        // 生成代码
        autoGenerator.execute();
    }

}

猜你喜欢

转载自blog.csdn.net/weixin_47287832/article/details/128524883