• mybatis-plus generator


    依赖

    
    
        com.baomidou
        mybatis-plus-boot-starter
        3.5.1
    
    
    
    
        com.baomidou
        mybatis-plus-generator
        3.5.1
    
    
    
    
        org.springframework.boot
        spring-boot-starter-freemarker
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    运行代码

    public static void main(String[] args) {
    
            /**
             * System.getProperty("user.dir") 获取当前文件夹
             */
            String currentFile = System.getProperty("user.dir");
    
            /**
             * 包名
             */
            String packageName = "com.example.rockermq";
    
            /**
             * 生成
             */
            FastAutoGenerator.create("jdbc:mysql://localhost:3306/example?serverTimezone=UTC", "root", "root")
                    .globalConfig(builder -> {
                        //设置作者
                        builder.author("Mr.Ma")
                                //开启 swagger 模式
                                //.enableSwagger()
                                //覆盖已生成文件
                                .fileOverride()
                                //禁止打开输出目录 默认值:true
                                .disableOpenDir()
                                //默认值: DateType.TIME_PACK
                                .dateType(DateType.TIME_PACK)
                                //指定输出目录
                                .outputDir(currentFile + "/src/main/java");
                    })
                    .packageConfig(builder -> {
                        //设置父包名
                        builder.parent(packageName)
                                //设置父包模块名
                                //.moduleName("rockermq")
                                //Entity 包名
                                //.entity("entity")
                                //.other("dto") // 设置dto包名
                                //.mapper()
                                //.service()
                                //.serviceImpl()
                                //.controller()
                                //设置mapperXml生成路径
                                .pathInfo(Collections.singletonMap(OutputFile.mapperXml, currentFile + "/src/main/resources/" + packageName + "/mappers"));
                    })
                    .strategyConfig(builder -> {
                        // 设置需要生成的表名
                        builder.addInclude("user_operation_log")
                                //.addTablePrefix("t_", "c_") //设置过滤表前缀
                                //Entity策略配置
                                .entityBuilder()
                                .enableLombok() // 开启 lombok 模型
                                .enableTableFieldAnnotation() // 开启生成实体时生成字段注解
                                //Mapper策略配置
                                .mapperBuilder()
                                .enableMapperAnnotation() // 开启 @Mapper 注解
                                //.enableBaseColumnList() // 启用 BaseColumnList
                                .enableBaseResultMap() // 启用 BaseResultMap 生成
                                .serviceBuilder()
                                //"%sService" 去掉Service接口的首字母I
                                .formatServiceFileName("%sService")
                                //Controller策略配置
                                .controllerBuilder()
                                .enableRestStyle() // 开启生成@RestController 控制器
                                .enableHyphenStyle();
                    })
                    //使用Freemarker引擎模板,默认的是Velocity引擎模板
                    .templateEngine(new FreemarkerTemplateEngine())
                    // 生成DTO VO
                    /*.injectionConfig(consumer -> {
                        Map customFile = new HashMap<>();
                        // DTO
                        customFile.put("DTO.java", "/templates/entity.java");
                        consumer.customFile(customFile);
                    })*/
                    // 执行
                    .execute();
        }
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
  • 相关阅读:
    Mendix与Java组件的完美结合实践
    迅为龙芯开发板虚拟机ubuntu更换下载源
    kubernetes二进制安装教程单master
    App移动端测试(6)—— 应用程序(apk)包管理与activity
    安装ipmitool时报错,EVP_CIPHER_CTX ctx 未识别
    硅谷课堂笔记
    Linux安全基线-audit审计规则配置7小项(CentOS8)
    linux基础命令
    【纯享】剑指大厂,22年最强阿里JAVA手册
    梦开始的地方 —— C语言(枚举+位段+联合体)
  • 原文地址:https://blog.csdn.net/weixin_44675513/article/details/126754147