spring boot集成mybatisPlus且配置自动生成器
1.添加如下依赖
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${springfox-swagger2.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${springfox-swagger2.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>${freemarker.version}</version>
<scope>compile</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
<scope>provided</scope>
</dependency>
2.新建MySQLGenerator
在此对配置做了基础修改,如若扩展。
链接: mybatisplus官网
public class MySQLGenerator {
public static void main(String[] args) {
System.out.println(System.getProperty("user.dir"));
FastAutoGenerator.create("jdbc:mysql://localhost:3306/mall4cloud_order?useUnicode=true&characterEncoding=utf8&useSSL=false", "root", "123123")
.globalConfig(builder -> {
builder.author("pengf") // 设置作者
.commentDate("MM-DDDD")//设置时间
.enableSwagger() // 开启 swagger 模式
.fileOverride() // 覆盖已生成文件
.outputDir(System.getProperty("user.dir")+"/mall-mbg/src/main/java"); // 指定输出目录
})
//包配置
.packageConfig(builder -> {
builder.parent("com.mybatisplus.generator") // 设置父包名
.moduleName("order") // 设置父包模块名
// .pathInfo(Collections.singletonMap(OutputFile.xml, "D://")) // 设置mapperXml生成路径
;
})
//策略配置
.strategyConfig(builder -> {
builder
.entityBuilder()
.enableLombok()//开启 lombok 模型
.idType(IdType.AUTO) //由数据库控制ID自增
.enableChainModel()
.mapperBuilder()
.enableMapperAnnotation()//开启 @Mapper 注解
.controllerBuilder()
.enableRestStyle() //开启生成@RestController 控制器
;
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板,注意 pom 依赖必须有!
.execute();
}
}
3.启动类上面添加@MapperScan注解,扫描mapper目录下的文件,也可以不加该注解,但是必须在每个Mapper类上面添加@Mapper注解。
备注:生成的实体类lombok注解是@Getter、@Setter,如何修改成@Data呢????