使用Mybatis完成CRUD
时间: 2025-03-28 10:06:31 浏览: 25
### 如何使用 MyBatis 实现 CRUD 操作
#### 1. Spring Boot 整合 MyBatis
为了实现 MyBatis 的 CRUD 功能,首先需要将 MyBatis 和 Spring Boot 进行整合。可以通过在 `pom.xml` 文件中引入必要的依赖来完成此操作:
```xml
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<!-- 数据库驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
```
通过上述配置,Spring Boot 将自动加载并初始化 MyBatis 所需的核心组件[^1]。
---
#### 2. 创建实体类
定义一个 Java 类作为数据库表对应的模型对象。例如,假设有一个名为 `User` 的表,则可以创建如下实体类:
```java
public class User {
private Integer id;
private String name;
private Integer age;
// Getter and Setter methods...
}
```
该实体类用于映射数据库中的字段到程序中的变量。
---
#### 3. 编写 Mapper 接口
Mapper 接口是 MyBatis 中的关键部分之一,负责声明 SQL 查询逻辑以及数据交互方式。下面是一个示例接口:
```java
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface UserMapper {
List<User> findAll(); // 查找所有用户
User findById(Integer id); // 根据 ID 查找用户
void insert(User user); // 插入新用户
void update(User user); // 更新现有用户
void deleteById(Integer id); // 删除指定 ID 用户
}
```
注意,在实际项目中通常会配合 XML 文件编写复杂的 SQL 语句。
---
#### 4. 配置 SqlSessionFactory
MyBatis 使用 `SqlSessionFactory` 来管理数据库连接池以及其他资源分配工作。按照最佳实践建议,应确保在整个应用程序生命周期内仅创建一次 `SqlSessionFactory` 实例[^3]。如果采用 Spring Boot,默认情况下框架已经帮我们完成了这一设置过程。
---
#### 5. 控制台打印 SQL 日志
为了让开发者更容易调试问题,可以在 application.properties 或者 yml 文件里开启日志功能以便查看执行过的每条 SQL 语句[^4]:
```properties
logging.level.com.example.mapper=DEBUG
```
此处替换 `com.example.mapper` 为你自己项目的 mapper 包路径名。
---
#### 6. 测试分页查询 (可选)
如果希望支持带分页特性的读取请求,那么 PageHelper 库将会非常有用。只需简单几步即可集成进去:
1. 添加 Maven 依赖项;
2. 修改服务层代码调用 page 方法前加上 startPage() 函数;
具体步骤参见引用说明。
---
### 总结
以上便是利用 MyBatis 完成基本增删改查的操作流程概述。从环境搭建到最后测试验证整个环节都进行了详细介绍。
阅读全文
相关推荐


















