第一步:添加依赖
<!-- mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<!-- mybatis-plus代码生成器 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<!--逆向工程需要模板引擎-->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
<!--oracle数据库连接-->
<dependency>
<groupId>com.oracle.database.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
<version>19.11.0.0</version>
</dependency>
<!--mysql数据库连接-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
第二步:编写相关代码
public static void main(String[] args) {
// DataSourceConfig.Builder dataSourceConfigBuilder = new DataSourceConfig
// .Builder(
// //数据库连接地址
// "jdbc:oracle:thin:@127.0.0.1:49521:helowin",
// //数据库用户名
// "root",
// //数据库密码
// "123456");
// //数据库schema
// dataSourceConfigBuilder.schema("SZHY");
//mysql
DataSourceConfig.Builder dataSourceConfigBuilder = new DataSourceConfig
.Builder(
//数据库连接地址
"jdbc:mysql://localhost:3306/cisql?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&serverTimezone=UTC",
//数据库用户名
"root",
//数据库密码
"123456");
//数据库schema
dataSourceConfigBuilder.schema("cisql");
FastAutoGenerator.create(dataSourceConfigBuilder)
.globalConfig(builder -> {
builder.author("jerry") // 设置作者
//.fileOverride() // 覆盖已生成文件
.outputDir("D:\\myproject\\generatorTest\\src\\main\\java\\"); // 指定输出目录
})
.packageConfig(builder -> {
builder.parent("com.example") // 设置父包名
.moduleName("demo") // 设置父包模块名
.pathInfo(Collections.singletonMap(OutputFile.mapperXml,
"D:\\myproject\\generatorTest\\src\\main\\resources\\mapper")); // 设置mapperXml生成路径
})
.strategyConfig(builder -> {
builder.addInclude("sh_supervise_chat_record")
.addTablePrefix("sh_"); // 设置过滤表前缀
})
.templateEngine(new FreemarkerTemplateEngine())// 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();
}
}
第三步:运行main方法即可生成对应的controller、service、mapper文件
遇到问题:如果运行代码有报错一般是引入的依赖有问题或者数据库的连接信息有问题,检查相关代码即可解决。如果运行代码后无报错但无代码生成,请检查main方法中生成文件的路径是否配置正确。