MybatisPlus[新]逆向工程,代码生成器

MybatisPlus旧版本的代码生成器官方新版已经不在维护了. 并在新版中,将内部的构造方法改成了private, 导致新版本的myabtis-plus无法使用旧版本的代码生成器.下列配置是新版本的代码生成配置

  1. 添加依赖
<!-- 代码自动生成器依赖-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-generator</artifactId>
    <version>3.5.3.1</version>
</dependency>

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
</dependency>
  1. 添加快速生成代码
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;

import java.sql.Types;
import java.util.Collections;

public class Generate {
    public static void main(String[] args) {
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/dbtest?useUnicode=true&characterEncoding=UTF-8",
                        "root",
                        "123456")
                .globalConfig(builder -> {
                    builder
//                            .author("wang") // 设置作者
//                            .enableSwagger() // 开启 swagger 模式
//                            .fileOverride() // 覆盖已生成文件
                            .outputDir("E:\\login-boot\\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.itszt.loginboot") // 设置父包名
//                            .moduleName("test") // 设置父包模块名
                            .entity("pojo") //设置entity包名
                            .mapper("mapper") //设置mapper包名
                            .service("service") // 设置service包名
                            .controller("controller")
                            .serviceImpl("service.impl")
                            .pathInfo(Collections.singletonMap(OutputFile.xml, "E:\\login-boot\\src\\main\\resources\\mapper")); // 设置mapperXml生成路径

                })
                .strategyConfig(builder -> {
                    builder.addInclude("user"); // 设置需要生成的表名
//                            .addTablePrefix("t_", "c_"); // 设置过滤表前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();
    }
}
  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MyBatis Plus提供了一个方便的代码生成器,可以帮助我们快速生成实体类、Mapper接口、Service层和Controller层的代码。下面是使用MyBatis Plus代码生成器的步骤: 1. 添加相关依赖:在项目的pom.xml文件中添加MyBatis Plus和代码生成器的依赖。 ```xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>最新版本</version> </dependency> ``` 2. 配置代码生成器:创建一个代码生成器的配置类,并添加相应的配置项,如数据库连接信息、生成文件的输出路径、生成的包名等。 ```java public class CodeGenerator { public static void main(String[] args) { AutoGenerator generator = new AutoGenerator(); // 配置数据源 DataSourceConfig dataSourceConfig = new DataSourceConfig(); dataSourceConfig.setUrl("jdbc:mysql://localhost:3306/mybatis_plus_demo?serverTimezone=UTC"); dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver"); dataSourceConfig.setUsername("root"); dataSourceConfig.setPassword("123456"); generator.setDataSource(dataSourceConfig); // 配置全局策略 GlobalConfig globalConfig = new GlobalConfig(); globalConfig.setOutputDir(System.getProperty("user.dir") + "/src/main/java"); globalConfig.setAuthor("Your Name"); globalConfig.setOpen(false); generator.setGlobalConfig(globalConfig); // 配置包名策略 PackageConfig packageConfig = new PackageConfig(); packageConfig.setParent("com.example.demo"); generator.setPackageInfo(packageConfig); // 配置模板引擎 TemplateConfig templateConfig = new TemplateConfig(); templateConfig.setXml(null); generator.setTemplate(templateConfig); // 执行生成代码 generator.execute(); } } ``` 3. 运行代码生成器:运行CodeGenerator类的main方法,即可生成对应的代码文件。 4. 自定义代码模板(可选):MyBatis Plus代码生成器默认提供了一套代码模板,如果需要定制自己的生成规则,可以根据需求修改模板文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值