文章目录
- MyBatis-Plus的BaseMapper常用方法
- 一、引言
- 二、BaseMapper 简介
- 1、BaseMapper 概述
- 1.1、BaseMapper 的特点
- 2、BaseMapper 常用方法
- 2.1、插入操作
- 2.2、删除操作
- 2.3、更新操作
- 2.4、查询操作
- 三、分页查询
- 3、分页拦截器配置
- 四、总结
MyBatis-Plus的BaseMapper常用方法
一、引言
MyBatis-Plus 是一个 MyBatis 的增强工具,它简化了 CRUD 操作,使得开发者可以更加专注于业务逻辑。BaseMapper 是 MyBatis-Plus 中非常核心的一个接口,它提供了单表操作的常用方法,极大地提高了开发效率。
二、BaseMapper 简介
1、BaseMapper 概述
BaseMapper 是 MyBatis-Plus 提供的一个通用 Mapper 接口,继承了该接口后,可以无需编写 SQL 语句即可实现基本的 CRUD 操作。它通过动态代理机制在运行时生成实现类,从而简化了数据访问层的编码工作。
1.1、BaseMapper 的特点
- 泛型支持:BaseMapper 支持泛型,可以指定操作的实体类,使得类型安全。
- CRUD 封装:内置了常用的 CRUD 方法,无需手写 SQL。
- 条件构造器:提供了 Wrapper 条件构造器,方便构建复杂的查询条件。
2、BaseMapper 常用方法
2.1、插入操作
- insert(T entity):插入一条记录。
User user = new User();
user.setName("John Doe");
userMapper.insert(user);
2.2、删除操作
- deleteById(Serializable id):根据 ID 删除记录。
- deleteByMap(Map<String, Object> columnMap):根据 columnMap 条件删除记录。
- delete(Wrapper queryWrapper):根据 Wrapper 条件删除记录。
userMapper.deleteById(1L);
2.3、更新操作
- updateById(T entity):根据 ID 更新记录。
- update(T entity, Wrapper updateWrapper):根据条件更新记录。
User user = new User();
user.setId(1L);
user.setName("Jane Doe");
userMapper.updateById(user);
2.4、查询操作
- selectById(Serializable id):根据 ID 查询记录。
- selectList(Wrapper queryWrapper):根据条件查询记录列表。
- selectPage(Page page, Wrapper queryWrapper):分页查询。
User user = userMapper.selectById(1L);
List<User> users = userMapper.selectList(new QueryWrapper<>());
三、分页查询
分页查询是数据库操作中常见的需求,MyBatis-Plus 通过配置分页拦截器支持分页查询。
3、分页拦截器配置
@Configuration
public class MpConfig {@Beanpublic MybatisPlusInterceptor mpInterceptor() {MybatisPlusInterceptor mpInterceptor = new MybatisPlusInterceptor();mpInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());return mpInterceptor;}
}
四、总结
BaseMapper 作为 MyBatis-Plus 的核心组件,极大地简化了数据访问层的编码工作。通过继承 BaseMapper 接口,开发者可以轻松实现 CRUD 操作,同时利用条件构造器构建复杂的查询条件,提高开发效率。
版权声明:本博客内容为原创,转载请保留原文链接及作者信息。
参考文章:
- MybatisPlus 的入门与实践:BaseMapper 实现 CRUD
- MyBatis-Plus的BaseMapper常用方法