MyBatis-Plus生成代码
注:以下代码生成演示基于springboot项目,如果用在SSM项目,记得修改*Mapper.xml路径
需要导入的包
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.2</version>
</dependency>
然后在项目中定义一个util包,再定义一下CodeGenerator类,最后运行该方法自动声明代码。
package com.java.web.util;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class CodeGenerator {
//修改连接的数据库,以及需要创建的表名
static final String URL="jdbc:mysql://localhost:3306/spring?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai";
static final List<String> TABLES = Arrays.asList(new String[]{"user"});
public static void main(String[] args) {
FastAutoGenerator.create(URL, "root", "123456")
//代码生成的基目录
.globalConfig(builder -> builder.outputDir("D:\\code\\graduation\\sqlTest\\src\\main\\java"))
.packageConfig(builder -> {
builder.parent("com.java.web") //pojo、service、impl生成代码所在的包,下面时Mapper.xml所在包路径
.pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D:\\code\\graduation\\sqlTest\\src\\main\\resources\\mapper"));
})
//去除表前缀
//.strategyConfig(builder -> {
// builder.addInclude(TABLES)
// .addTablePrefix("tb_");
//})
.execute();
}
}
只需要修改如下几点:
● 连接的数据库名(表所在的数据库名)
● 需要创建的表名(将“user”替换成你需要生成的表)
● 数据库用户名和密码
● 代码生成的基本目录,一般是项目自动生成的,绝对路径
● pojo、service、impl、mapper接口生成代码所在的包,相对路径
● 然后是*Mapper.xml所在包路径,绝对路径
● 如果数据库表名有前缀可以使用最后的代码去掉表前缀