mybatis-plus mapper 常用方法
·
在 MyBatis-Plus 中,Mapper 层的核心是 BaseMapper 接口。只要你的 Mapper 接口继承了它,就可以零 XML 直接使用以下内置的 CRUD 方法。
为了与 Service 层(如 getOne、list)区分,Mapper 层的方法命名更贴近原生 SQL 操作,通常以 select、insert、update、delete 为前缀。
以下是 Mapper 层最常用的方法分类整理:
新增操作 (Insert)
- insert(T entity):插入一条记录。支持主键自动填充(如雪花算法、自增),插入后会自动回显主键值。
删除操作 (Delete)
- deleteById(Serializable id):根据主键 ID 删除单条记录。
- deleteBatchIds(Collection<? extends Serializable> idList):根据 ID 集合批量删除记录。
- delete(Wrapper wrapper):根据条件构造器(Wrapper)动态删除符合条件的记录。
- deleteByMap(Map<String, Object> columnMap):根据 Map 中的键值对作为条件进行删除。
修改操作 (Update)
- updateById(T entity):根据主键 ID 更新记录。默认只更新实体中非 null 的字段。
- update(T entity, Wrapper updateWrapper):根据条件构造器更新。第一个参数为实体(可为 null),第二个参数为 Wrapper 条件。
查询操作 (Select)
- selectById(Serializable id):根据主键 ID 查询单条记录。
- selectBatchIds(Collection<? extends Serializable> idList):根据 ID 集合批量查询。
- selectOne(Wrapper queryWrapper):根据条件查询单条记录。注意:如果查出多条数据会抛出异常。
- selectList(Wrapper queryWrapper):根据条件构造器查询列表。
- selectCount(Wrapper queryWrapper):根据条件查询总记录数。
- selectPage(IPage page, Wrapper queryWrapper):分页查询(需配合 MyBatis-Plus 的分页插件使用)。
- selectMaps(Wrapper queryWrapper):根据条件查询全部记录,但将结果映射为 Map<String, Object> 集合。
- selectObjs(Wrapper queryWrapper):根据条件查询全部记录,但只返回第一个字段的值列表。
以下是 Mapper 层常用方法的返回值类型及说明:
- 查询操作 (Select)
查询操作的返回值最为丰富,主要取决于你的业务需求 - 其他
表示受影响的行数 int类型
💡 开发建议:
对于增、删、改操作,建议养成检查返回值的习惯。例如在执行 updateById 后判断返回值是否为 0,以此来确认操作是否真正生效,避免产生静默失败。
更多推荐



所有评论(0)