1. 项目概述
SpringBoot3 + MyBatis-Plus 组合是目前Java后端开发中最流行的技术栈之一。这个组合能让我们用最少的配置快速搭建一个功能完善的数据持久层,特别适合中小型项目的快速启动。今天我要分享的是一个经过实战验证的5分钟快速搭建方案,这个方案已经在我们团队的三个实际项目中稳定运行。
提示:本文使用的SpringBoot版本为3.1.5,MyBatis-Plus版本为3.5.3.1,建议使用相同版本以避免兼容性问题。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与项目创建
2.1 开发环境要求
在开始之前,请确保你的开发环境满足以下要求:
- JDK 17或更高版本(SpringBoot3必须)
- Maven 3.6.3+
- IntelliJ IDEA或Eclipse(推荐IDEA)
- MySQL 5.7+/PostgreSQL(本文以MySQL为例)
2.2 使用Spring Initializr创建项目
最快的方式是通过Spring官方提供的初始化工具:
- 访问 https://start.spring.io
- 选择以下配置:
- Project: Maven Project
- Language: Java
- Spring Boot: 3.1.5
- 添加依赖:
- Spring Web
- MyBatis Framework
- MySQL Driver
点击"Generate"下载项目压缩包,解压后用IDE打开。
2.3 添加MyBatis-Plus依赖
在pom.xml中添加MyBatis-Plus的starter依赖:
xml复制<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3.1</version>
</dependency>
注意:不要同时保留mybatis-spring-boot-starter和mybatis-plus-boot-starter,这会导致冲突。
3. 核心配置与代码实现
3.1 数据库配置
在application.properties中添加数据库连接配置:
properties复制spring.datasource.url=jdbc:mysql://localhost:3306/your_db?useSSL=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# MyBatis-Plus配置
mybatis-plus.mapper-locations=classpath:mapper/*.xml
mybatis-plus.type-aliases-package=com.example.demo.entity
3.2 实体类创建
创建一个简单的用户实体类:
java复制@Data
@TableName("user")
public class User {
@TableId(type = IdType.AUTO)
private Long id;
private String username;
private String email;
private LocalDateTime createTime;
}
3.3 Mapper接口
创建对应的Mapper接口:
java复制public interface UserMapper extends BaseMapper<User> {
// 这里可以添加自定义SQL方法
}
别忘了在启动类上添加@MapperScan注解:
java复制@SpringBootApplication
@MapperScan("com.example.demo.mapper")
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
4. 功能测试与验证
4.1 编写测试Controller
创建一个简单的REST接口进行测试:
java复制@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserMapper userMapper;
@GetMapping("/list")
public List<User> list() {
return userMapper.selectList(null);
}
@PostMapping("/add")
public String add(@RequestBody User user) {
user.setCreateTime(LocalDateTime.now());
return userMapper.insert(user) > 0 ? "success" : "fail";
}
}
4.2 使用Postman测试
启动应用后,可以使用Postman测试:
- POST http://localhost:8080/user/add
Body: - GET http://localhost:8080/user/list
5. 高级配置与优化
5.1 分页插件配置
MyBatis-Plus的分页功能非常实用,添加配置类:
java复制@Configu
