MyBatis基本用法-BaseMapper中提供的CRUD方法

MyBatis Plus框架提供了BaseMapper接口,该接口封装了常见的CRUD(增删改查)操作方法。下面是BaseMapper提供的部分方法及其功能说明:

  1. insert(T entity):插入一条数据

    T entity = new T(); // 创建实体对象
    baseMapper.insert(entity); // 插入数据
    
  2. insertBatch(List entityList):批量插入数据

    List<T> entityList = new ArrayList<>();
    // 添加多条实体对象到entityList中
    baseMapper.insertBatch(entityList); // 批量插入数据
    
  3. insertOrUpdate(T entity):插入或更新数据

    T entity = new T(); // 创建实体对象
    baseMapper.insertOrUpdate(entity); // 插入或更新数据
    
  4. deleteById(Serializable id):根据主键ID删除数据

    Serializable id = 1L; // 要删除的实体的主键ID
    baseMapper.deleteById(id); // 删除数据
    
  5. deleteByMap(Map<String, Object> columnMap):根据条件删除数据

    Map<String, Object> columnMap = new HashMap<>();
    columnMap.put("name", "Tom"); // 设置删除条件,这里以name字段等于"Tom"为例
    baseMapper.deleteByMap(columnMap); // 删除满足条件的数据
    
  6. delete(Wrapper wrapper):根据条件删除数据

    // 创建Wrapper对象,设置删除条件
    LambdaQueryWrapper<T> wrapper = new LambdaQueryWrapper<>();
    wrapper.eq(T::getName, "Tom"); // 设置删除条件,这里以name字段等于"Tom"为例
    baseMapper.delete(wrapper); // 删除满足条件的数据
    
  7. deleteBatchIds(Collection<? extends Serializable> idList):根据主键ID批量删除数据

    Collection<? extends Serializable> idList = Arrays.asList(1L, 2L, 3L); // 要删除的实体的主键ID列表
    baseMapper.deleteBatchIds(idList); // 批量删除数据
    
  8. updateById(T entity):根据主键ID更新数据

    T entity = new T(); // 创建实体对象
    entity.setId(1L); // 设置要更新的实体的主键ID
    baseMapper.updateById(entity); // 更新数据
    
  9. update(T entity, Wrapper updateWrapper):根据条件更新数据

    T entity = new T(); // 创建实体对象
    // 创建Wrapper对象,设置更新条件
    LambdaUpdateWrapper<T> updateWrapper = new LambdaUpdateWrapper<>();
    updateWrapper.eq(T::getName, "Tom"); // 设置更新条件,这里以name字段等于"Tom"为例
    baseMapper.update(entity, updateWrapper); // 更新满足条件的数据
    
  10. selectById(Serializable id):根据主键ID查询数据

    Serializable id = 1L; // 要查询的实体的主键ID
    T entity = baseMapper.selectById(id); // 查询数据
    
  11. selectBatchIds(Collection<? extends Serializable> idList):根据主键ID批量查询数据

    Collection<? extends Serializable> idList = Arrays.asList(1L, 2L, 3L); // 要查询的实体的主键ID列表
    List<T> entityList = baseMapper.selectBatchIds(idList); // 批量查询数据
    
  12. selectByMap(Map<String, Object> columnMap):根据条件查询数据

    Map<String, Object> columnMap = new HashMap<>();
    columnMap.put("name", "Tom"); // 设置查询条件,这里以name字段等于"Tom"为例
    List<T> entityList = baseMapper.selectByMap(columnMap); // 查询满足条件的数据
    
  13. selectOne(Wrapper queryWrapper):根据条件查询单条数据

    // 创建Wrapper对象,设置查询条件
    LambdaQueryWrapper<T> queryWrapper = new LambdaQueryWrapper<>();
    queryWrapper.eq(T::getName, "Tom"); // 设置查询条件,这里以name字段等于"Tom"为例
    T entity = baseMapper.selectOne(queryWrapper); // 查询满足条件的数据
    
  14. selectCount(Wrapper queryWrapper):根据条件查询数据总数

    // 创建Wrapper对象,设置查询条件
    LambdaQueryWrapper<T> queryWrapper = new LambdaQueryWrapper<>();
    queryWrapper.eq(T::getName, "Tom"); // 设置查询条件,这里以name字段等于"Tom"为例
    int count = baseMapper.selectCount(queryWrapper); // 查询满足条件的数据总数
    
  15. selectList(Wrapper queryWrapper):根据条件查询数据列表

    // 创建Wrapper对象,设置查询条件
    LambdaQueryWrapper<T> queryWrapper = new LambdaQueryWrapper<>();
    queryWrapper.eq(T::getAge, 18); // 设置查询条件,这里以age字段等于18为例
    List<T> entityList = baseMapper.selectList(queryWrapper); // 查询满足条件的数据列表
    
  16. selectMaps(Wrapper queryWrapper):根据条件查询数据列表,并返回Map集合

    // 创建Wrapper对象,设置查询条件
    LambdaQueryWrapper<T> queryWrapper = new LambdaQueryWrapper<>();
    queryWrapper.eq(T::getAge, 18); // 设置查询条件,这里以age字段等于18为例
    List<Map<String, Object>> mapList = baseMapper.selectMaps(queryWrapper); // 查询满足条件的数据列表,并返回Map集合
    
  17. selectPage(Page page, Wrapper queryWrapper):根据条件分页查询数据

    // 创建Wrapper对象,设置查询条件
    LambdaQueryWrapper<T> queryWrapper = new LambdaQueryWrapper<>();
    queryWrapper.eq(T::getAge, 18); // 设置查询条件,这里以age字段等于18为例
    Page<T> page = new Page<>(1, 10); // 创建分页对象,设置当前页和每页显示数量
    IPage<T> pageResult = baseMapper.selectPage(page, queryWrapper); // 分页查询满足条件的数据
    List<T> entityList = pageResult.getRecords(); // 当前页的数据列表
    long total = pageResult.getTotal(); // 总记录数
    

以上就是MyBatis Plus框架的BaseMapper提供的部分CRUD方法及其功能说明。这些方法可以方便地进行数据库操作,并且使用简单、灵活。

猜你喜欢

转载自blog.csdn.net/qq_41177135/article/details/131745178