0
点赞
收藏
分享

微信扫一扫

MybatisPlus 自动生成代码 controller,service&iService,mapper,xml,entity

zhongjh 2022-01-17 阅读 57

目录

代码

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
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.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;

/**
 * Mybatis 自动生成 controller,service&iService,mapper,xml,entity
 * @author jiaohongtao
 * @version 1.0.0
 * @since 2022/01/17
 */
public class AutoGeneratorUtil {

    public static void autoGenerator() {
        // Step1:数据源配置
        String url = "jdbc:mysql://127.0.0.1:3306/databaseName?useUnicode=true&characterEncoding=utf8";
        String username = "root";
        String password = "123456";
        DataSourceConfig dataSourceConfig = new DataSourceConfig.Builder(url, username, password).build();

        // Step2:全局配置
        GlobalConfig.Builder builder = new GlobalConfig.Builder();
        // 填写代码生成的目录
        String projectPath = "D:\\projects\\projectName";
        builder.outputDir(projectPath + "/src/main/java");
        // 作者
        builder.author("jiaohongtao");
        // 配置日期类型
        builder.dateType(DateType.ONLY_DATE);
        // builder.fileOverride();
        // 执行完毕后不打开目录
        builder.disableOpenDir();
        GlobalConfig globalConfig = builder.build();

        // Step:3:包配置
        PackageConfig packageConfig = new PackageConfig.Builder().parent("com.jiao.test").build();

        // Step4:策略配置(数据库表配置)
        StrategyConfig strategy = new StrategyConfig.Builder()
                // 生成哪些表的类
                .addInclude("table")
                // 开启大写命名
                .enableCapitalMode()
                // lombox,字段下划线驼峰转换
                .entityBuilder().enableLombok().columnNaming(NamingStrategy.underline_to_camel)
                // 移除 is 前缀
                .enableRemoveIsPrefix()
                // controller 使用RestController
                .controllerBuilder().enableRestStyle()
                // 继承基类实现类
                .serviceBuilder().superServiceImplClass(SuperServiceImpl.class)
                .build();

        // Step5:创建 代码生成器
        AutoGenerator generator = new AutoGenerator(dataSourceConfig);
        generator.global(globalConfig);
        generator.packageInfo(packageConfig);
        generator.strategy(strategy);

        // Step6:生成代码
        generator.execute();
    }

    public static void main(String[] args) {
        autoGenerator();
    }
}

生成示例

示例

​​​​​参考​

MyBatis-Plus 用起来真的很舒服 - 累成一条狗 - 博客园

举报

相关推荐

0 条评论