【MyBatis Plus】MyBatis Plus的BaseMapper具备什么功能?

Mybatis Plus的BaseMapper提供了以下基础功能:

1. 基本的CRUD接口

  • insert() 方法插入记录
  • deleteById() 根据ID删除
  • updateById() 根据ID更新
  • selectById() 根据ID查询
  • …等基本CRUD操作

2. 列表查询接口

  • selectList() 执行列表查询
  • selectBatchIds() 根据ID列表查询
  • selectMaps() 映射为Map结果
  • …等多种列表查询

3. 分页查询接口

  • selectPage() 执行分页查询
  • selectPageVo() 返回Vo结果
  • 。。。等分页查询

4. 多表操作接口

  • selectOne() 一对一关联查询
  • selectList() 一对多关联查询
  • …等多表查询

5. 自定义类型结果映射

  • selectDTOList() 映射为DTO类型结果
  • selectMapList() 映射为Map类型结果
  • …etc 多种自定义结果映射

6. 批量操作接口

  • insertBatch() 批量插入
  • updateBatchById() 批量更新
  • deleteBatchIds() 批量删除
  • …等批量操作接口

所有这些功能,都是在BaseMapper接口中定义的。

我们自定义的Mapper接口只需继承BaseMapper即可使用:

@Mapper
public interface UserMapper extends BaseMapper<User> {
  // 继承 BaseMapper 的所有方法     
}

就可以直接在服务中使用:

userMapper.selectPage(...);
userMapper.deleteBatchIds(...);

通过继承BaseMapper,为Mapper接口提供了丰富的基础功能。