mybatis-plus新版代码生成器

依赖

        
        <dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plus-boot-starterartifactId>
            <version>3.4.3.4version>
        dependency>
        
        <dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plus-generatorartifactId>
            <version>3.5.1version>
        dependency>
        
        <dependency>
            <groupId>org.freemarkergroupId>
            <artifactId>freemarkerartifactId>
            <version>2.3.28version>
        dependency>
        
        <dependency>
            <groupId>com.github.xiaoymingroupId>
            <artifactId>knife4j-spring-boot-starterartifactId>
            <version>2.0.7version>
        dependency>
    public static void main(String[] args) {

        List<String> tables = new ArrayList<>();
        tables.add("user");
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/mybatis_plus?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true",
                        "root",
                        "333")
                //全局配置
                .globalConfig(builder -> {
                    builder.author("MaybeBin")                                              // 设置作者
                            .enableSwagger()                                                // 开启 swagger 模式
                            .fileOverride()                                                 // 覆盖已生成文件
                            .disableOpenDir()                                               // 禁止打开输出目录
                            .dateType(DateType.TIME_PACK)                                   // 时间策略
                            .commentDate("yyyy-MM-dd")                                      // 注释日期
                            .outputDir(System.getProperty("user.dir")
                                    + "/src/main/java");                           // 指定输出目录
                })
                //包配置
                .packageConfig(builder -> {
                    builder.entity("model")
                            .service("service")
                            .serviceImpl("serviceImpl")
                            .controller("controller")
                            .parent("com.chen.test")                                    // 设置父包名
                            //.moduleName("system")                                     // 设置父包模块名
                            .mapper("mapper")                                           // Mapper 包名
                            .xml("mapper")                                              // Mapper XML 包名
                            .pathInfo(Collections.singletonMap(
                                    OutputFile.mapperXml,
                                    System.getProperty("user.dir")
                                            + "/src/main/resources/mapper"));           // 设置mapperXml生成路径

                })
                //策略配置
                .strategyConfig(builder -> {
                    builder.addInclude(tables)                                          // 设置需要生成的表名
                            .addTablePrefix("t_")                                       // 表前缀过滤
                            .entityBuilder()                                            // 切换至Entity设置
                            .versionColumnName("version")                               // 乐观锁字段名(数据库)
                            .logicDeleteColumnName("isDeleted")                         // 逻辑删除字段名(数据库)
                            .enableLombok()                                             // lombok生效
                            .enableTableFieldAnnotation()                               // 所有实体类加注解
                            .serviceBuilder()                                           // 切换至Service层设置
                            .formatServiceFileName("%sService")                         // 设定后缀名
                            .formatServiceImplFileName("%sServiceImpl");                // 设定后缀名
                })
                //模板配置
                .templateEngine(new FreemarkerTemplateEngine())                         // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }

你可能感兴趣的:(JAVA,java,spring,boot,spring)