Mapper层继承BaseMapper<T>需要引入的pom依赖方式

 更新时间:2022年1月19日 15:49  点击:341 作者:qq_43154385

Mapper层继承BaseMapper<T>引入pom依赖

<!-- mp依赖
               mybatisPlus 会自动的维护Mybatis 以及MyBatis-spring相关的依赖
        -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>3.0.3</version>
        </dependency>

Mybatis-Plus的BaseMapper用法

BaseMapper 用法

Mapper 继承该接口后,无需编写 mapper.xml 文件,即可获得CRUD功能

public interface BaseMapper<T> {
    //插入一条记录  参数:实体  返回:int
    Integer insert(T entity);
 
    //根据 ID 删除  参数:主键ID  返回:int
    Integer deleteById(Serializable id);
    
     //根据 columnMap 条件,删除记录  参数:表字段 map 对象  返回:int
    Integer deleteByMap(@Param("cm") Map<String, Object> columnMap);
 
     //根据 entity 条件,删除记录  参数:实体对象封装操作类(可以为 null)  返回:int
    Integer delete(@Param("ew") Wrapper<T> wrapper);
 
     //删除(根据ID 批量删除)  参数:主键ID列表  返回:int
    Integer deleteBatchIds(List<? extends Serializable> idList);
 
     //根据 ID 修改  参数:实体对象  返回:int
    Integer updateById(T entity);
 
     //根据 whereEntity 条件,更新记录  参数:实体对象,实体对象封装操作类(可以为 null) 返回:int
    Integer update(@Param("et") T entity, @Param("ew") Wrapper<T> wrapper);
 
     //根据 ID 查询  参数:主键ID  返回:T
    T selectById(Serializable id);
 
     //查询(根据ID 批量查询)  参数:主键ID列表  返回:List<T>
    List<T> selectBatchIds(List<? extends Serializable> idList);
 
     //查询(根据 columnMap 条件)  参数:表字段 map 对象  返回:List<T>
    List<T> selectByMap(@Param("cm") Map<String, Object> columnMap);
 
     //根据 entity 条件,查询一条记录  参数:实体对象  返回:T
    T selectOne(@Param("ew") T entity);
     //根据 Wrapper 条件,查询总记录数  参数:实体对象  返回:int
    Integer selectCount(@Param("ew") Wrapper<T> wrapper);
 
     //根据 entity 条件,查询全部记录  参数:实体对象封装操作类(可以为 null)  返回:List<T>
    List<T> selectList(@Param("ew") Wrapper<T> wrapper);
 
     //根据 Wrapper 条件,查询全部记录  参数:实体对象封装操作类(可以为 null) 返回:List<T>
    List<Map<String, Object>> selectMaps(@Param("ew") Wrapper<T> wrapper);
 
     //根据 Wrapper 条件,查询全部记录  参数:实体对象封装操作类(可以为 null)  返回:List<Object>
    List<Object> selectObjs(@Param("ew") Wrapper<T> wrapper);
 
    /** 
     * 用法:(new RowBounds(offset, limit), ew);
     * 根据 entity 条件,查询全部记录(并翻页)
     * @param rowBounds
     * 分页查询条件(可以为 RowBounds.DEFAULT)
     * @param wrapper
     * 实体对象封装操作类(可以为 null)
     * @return List<T>
     */
     //根据 ID 删除  参数:主键ID  返回:int
    List<T> selectPage(RowBounds rowBounds, @Param("ew") Wrapper<T> wrapper);
 
    /** -- 不常用,
     * 根据 Wrapper 条件,查询全部记录(并翻页)
     * @param rowBounds
     * 分页查询条件(可以为 RowBounds.DEFAULT)
     * @param wrapper
     * 实体对象封装操作类
     * @return List<Map<String, Object>>
     */
     //根据 ID 删除  参数:主键ID  返回:int
    List<Map<String, Object>> selectMapsPage(RowBounds rowBounds, @Param("ew") Wrapper<T> wrapper);
}

用法举例

接口:

public interface UserDao extends BaseMapper<User> {
    //这里面不用做任何操作
}
//具体实现方法中:
QueryWrapper<User> queryWrapper=new QueryWrapper<>();
queryWrapper.lambda().eq(User::getName,"zhangsan");
List<User> userList = UserDao.selectList(queryWrapper); //调用UserDao中的方法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持猪先飞。

原文出处:https://blog.csdn.net/qq_43154385/article/details/105126600

[!--infotagslink--]

相关文章

  • mybatis-plus  mapper中foreach循环操作代码详解(新增或修改)

    这篇文章主要介绍了mybatis-plus mapper中foreach循环操作代码详解(新增或修改),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-11-17
  • 解决tk mapper 通用mapper的bug问题

    这篇文章主要介绍了解决tk mapper 通用mapper的bug问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-06-16
  • 解决IDEA无法下载maven依赖的问题

    这篇文章主要介绍了解决IDEA无法下载maven依赖的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-04
  • 解决ObjectMapper.convertValue() 遇到的一些问题

    这篇文章主要介绍了解决ObjectMapper.convertValue() 遇到的一些问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-06-30
  • mybatis mapper互相引用resultMap启动出错的解决

    这篇文章主要介绍了mybatis mapper互相引用resultMap启动出错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-25
  • Jackson库中objectMapper的用法

    这篇文章主要介绍了Jackson库中objectMapper的用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-06-20
  • 使用ObjectMapper把Json转换为复杂的实体类

    这篇文章主要介绍了使用ObjectMapper把Json转换为复杂的实体类操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-18
  • IDEA中创建maven项目引入相关依赖无法下载jar问题及解决方案

    这篇文章主要介绍了IDEA中创建maven项目引入相关依赖无法下载jar问题及解决方案,本文通过图文并茂的形式给大家分享解决方案,需要的朋友可以参考下...2020-07-28
  • 基于Maven导入pom依赖很慢的解决方案

    这篇文章主要介绍了Maven导入pom依赖很慢的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-10-08
  • 详解关于mybatis-plus中Service和Mapper的分析

    这篇文章主要介绍了详解关于mybatis-plus中Service和Mapper的分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-25
  • 详解c# AutoMapper 使用方式

    本篇文章主要介绍了详解c# AutoMapper 使用方式 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • Spring IOC原理补充说明(循环依赖、Bean作用域等)

    这篇文章主要介绍了Spring IOC原理补充说明(循环依赖、Bean作用域等),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-27
  • IDEA自定义pom依赖的步骤详解

    这篇文章主要介绍了IDEA自定义pom依赖的步骤详解,本文分步骤通过图文并茂的形式给大家介绍的非常详细对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-04-07
  • tk.mybatis如何扩展自己的通用mapper

    这篇文章主要介绍了tk.mybatis如何扩展自己的通用mapper操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-06-11
  • 在service层注入mapper时报空指针的解决

    这篇文章主要介绍了在service层注入mapper时报空指针的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-06-18
  • 浅入浅出的讲解Spring循环依赖问题

    循环依赖其实就是循环引用,也就是两个或则两个以上的bean互相持有对方,最终形成闭环,下面这篇文章主要给大家介绍了关于Spring循环依赖问题的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下...2021-10-13
  • MyBatis通用Mapper和PageHelper的过程详解

    这篇文章主要介绍了MyBatis通用Mapper和PageHelper的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-11-06
  • ASP.NET数据库缓存依赖实例分析

    这篇文章主要介绍了ASP.NET数据库缓存依赖,以实例的形式分析总结了数据库缓存依赖的原理与用法,非常具有实用价值,需要的朋友可以参考下...2021-09-22
  • maven依赖版本没有按照最短路径原则生效的解决方案

    这篇文章主要介绍了maven依赖版本没有生效的解决方案,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下...2021-01-29
  • .NET CORE中使用AutoMapper进行对象映射的方法

    这篇文章主要给大家介绍了关于.NET CORE中使用AutoMapper进行对象映射的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用.NET CORE具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2021-09-22