1、简介
- MyBatis-Plus(简称MP)是MyBatis的增强工具,它在MyBatis的基础上进行了扩展,以简化开发、提高效率。
- 本案例是一个MyBatis-Plus的简单使用案例,包括项目的初始化、配置、实体类、Mapper接口以及基本的CRUD操作。
2、实际使用
1. 项目初始化
首先,需要创建一个SpringBoot项目,并添加MyBatis-Plus的依赖。这里使用Maven构建工具,可以在pom.xml
文件中添加如下依赖:
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>最新版本号</version> <!-- 请替换为当前最新版本号 -->
</dependency>
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.xx</version> <!-- 请替换为适合的MySQL版本 -->
</dependency>
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>最新版本号</version> <!-- 可选,用于简化实体类代码 -->
</dependency>
2. 配置数据库连接
在application.yml
或application.properties
文件中配置数据库连接信息,例如:
spring: datasource: url: jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC username: root password: your_password driver-class-name: com.mysql.cj.jdbc.Driver
3. 实体类
定义一个实体类,使用MyBatis-Plus提供的注解来映射数据库表。例如,有一个用户表user
,对应的实体类如下:
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; @Data
@TableName("user")
public class User { @TableId(type = IdType.AUTO) private Long id; private String name; private Integer age; // 其他字段...
}
4. Mapper接口
定义一个Mapper接口,继承MyBatis-Plus的BaseMapper
接口,这样就可以直接使用MyBatis-Plus提供的增删改查方法了。
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper; @Mapper
public interface UserMapper extends BaseMapper<User> { // 这里可以定义一些自定义的SQL方法,如果不需要则无需额外编写
}
5. Service层
在Service层中注入Mapper接口,实现具体的业务逻辑。
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; @Service
public class UserService { @Autowired private UserMapper userMapper; // 添加用户 public boolean addUser(User user) { return userMapper.insert(user) > 0; } // 根据ID查询用户 public User getUserById(Long id) { return userMapper.selectById(id); } // 其他CRUD方法...
}
6. 测试
在测试类中编写测试方法来验证上述功能的正确性。可以使用JUnit和SpringBoot的测试框架进行测试。