Mapper层继承BaseMapper需要引入的pom依赖方式
时间:2022-04-27 10:27:51|栏目:JAVA代码|点击: 次
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中的方法


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




