# 快速开始

# 安装

Maven

1
2
3
4
5
6

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.7</version>
</dependency>

# 配置

application.yml

1
2
3
4
5
6
7
8
9
10
11

# DataSource Config
spring:
datasource:
driver-class-name: org.h2.Driver
username: root
password: test
sql:
init:
schema-locations: classpath:db/schema-h2.sql
data-locations: classpath:db/data-h2.sql

在 Spring Boot 启动类中添加 @MapperScan 注解,扫描 Mapper 文件夹

1
2
3
4
5
6
7
8
9
10

@SpringBootApplication
@MapperScan("com.baomidou.mybatisplus.samples.quickstart.mapper")
public class Application {

public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}

}

# 代码生成器

# xml

1
2
3
4
5
6
7
8
9
10
11
12
13

<!-- 代码生成-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.7</version>
</dependency>
<!-- 生成器附带-->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.3</version>
</dependency>

# 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;


import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class CodeGenerator {
// 处理 all 情况
protected static List<String> getTables(String tables) {
return "all".equals(tables) ? Collections.emptyList() : Arrays.asList(tables.split(","));
}

public static void main(String[] args) {
FastAutoGenerator.create("jdbc:mysql://127.0.0.1:3306/fluffy", "root", "1234")
// 全局配置
.globalConfig((scanner, builder) -> {
//设置注释信息-作者
builder.author(scanner.apply("请输入作者名称?"));
//设置swagger注解
//builder.enableSwagger();
//设置代码生成的路径
builder.outputDir(System.getProperty("user.dir")+"/src/main/java");
})
// 包配置
.packageConfig((scanner, builder) -> {
builder.parent(scanner.apply("请输入包名?"))
//设置xml文件路径
.pathInfo(Collections.singletonMap(OutputFile.xml, System.getProperty("user.dir")+"/src/main/resources/mapper"));
})
// 策略配置
.strategyConfig((scanner, builder) -> {
builder.addInclude(CodeGenerator.getTables(scanner.apply("请输入表名,多个英文逗号分隔?所有输入 all")))
.controllerBuilder().enableRestStyle().enableHyphenStyle().build();
builder.serviceBuilder()
.formatServiceFileName("%sService")
.formatServiceImplFileName("%sServiceImp")
.build();
//entity的策略配置
builder.entityBuilder()
//启用Lombok插件
.enableLombok()
.enableTableFieldAnnotation()
.versionColumnName("version")
.logicDeleteColumnName("is_delete")
//设置字段名的命名策略为下划线转驼峰命名
.columnNaming(NamingStrategy.underline_to_camel)
//主键策略递增
.idType(IdType.AUTO)
.formatFileName("%sEntity")
.build();
})
.execute();
}
}

阅读次数

请我喝[茶]~( ̄▽ ̄)~*

douk 微信支付

微信支付

douk 支付宝

支付宝