mybatis-plus代码生成器使用指南

mybatis-plus代码生成器

官网:mp代码生成器(新)

1、导入依赖

使用最新版本:3.5.3.1版本,老版本不兼容

 <properties>

        <mybatis-plus.version>3.5.3.1</mybatis-plus.version>
        <freemarker.version>2.3.31</freemarker.version>
        
    </properties>
<!--        mp代码生成器-->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-generator</artifactId>
                <version>${mybatis-plus.version}</version>
            </dependency>

            <dependency>
                <groupId>org.freemarker</groupId>
                <artifactId>freemarker</artifactId>
                <version>${freemarker.version}</version>
            </dependency>

2、导入代码生成器类

public static void main(String[] args) {
        FastAutoGenerator.create("url",
                                 "username",
                                 "password")
                .globalConfig(builder -> {
                    builder.author("AyoCoo") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            //建议使用绝对路径
                            .outputDir("E:\\AshoreDrill\\******"+"/src/main/java"); // 指定输出目录
                })
                .dataSourceConfig(builder -> builder.typeConvertHandler((globalConfig, typeRegistry, metaInfo) -> {
                    int typeCode = metaInfo.getJdbcType().TYPE_CODE;
                    if (typeCode == Types.SMALLINT) {
                        // 自定义类型转换
                        return DbColumnType.INTEGER;
                    }
                    return typeRegistry.getColumnType(metaInfo);

                }))
                .packageConfig(builder -> {
                    builder.parent("com.xxx") // 设置父包名
                            .moduleName("xxx") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.xml, "E:\\AshoreDrill\\***"+"/src/main/resources/Mapper")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder.addInclude("sys_user") // 设置需要生成的表名
                            .addTablePrefix("t_", "c_"); // 设置过滤表前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }
}

结果

不会覆盖自己手动新建的文件,自动跳过去创建新文件

mybatis-plus代码生成器使用指南_第1张图片

你可能感兴趣的:(#,mybatis,#,SpringBoot,Java,mybatis,java,开发语言)