MyBatis-Plus 在 MyBatis 的基础上,为单表操作提供了大量的便捷方法,主要集中在它的 BaseMapper
接口中。这些方法覆盖了基本的 CRUD(增删改查)操作,以及一些额外的便捷功能。以下是一些常用的 MyBatis-Plus 方法:
插入(Insert)
int insert(T entity)
: 插入一条记录。返回值为受影响的行数。
删除(Delete)
int deleteById(Serializable id)
: 根据主键ID删除记录。int deleteByMap(@Param("cm") Map<String, Object> columnMap)
: 根据条件删除记录,条件由 Map 给出。int delete(@Param("ew") Wrapper<T> queryWrapper)
: 根据条件构造器删除记录。int deleteBatchIds(@Param("coll") Collection<? extends Serializable> idList)
: 根据ID集合批量删除记录。
更新(Update)
int updateById(@Param("et") T entity)
: 根据主键ID更新记录。int update(@Param("et") T entity, @Param("ew") Wrapper<T> updateWrapper)
: 根据条件构造器更新记录。int updateBatchById(@Param("list") List<T> entityList)
: 批量更新记录,每个记录的ID必须存在。
查询(Select)
T selectById(Serializable id)
: 根据主键ID查询记录。List<T> selectBatchIds(@Param("coll") Collection<? extends Serializable> idList)
: 根据ID集合批量查询记录。List<T> selectByMap(@Param("cm") Map<String, Object> columnMap)
: 根据条件查询记录,条件由 Map 给出。T selectOne(@Param("ew") Wrapper<T> queryWrapper)
: 根据条件构造器查询一条记录。List<T> selectList(@Param("ew") Wrapper<T> queryWrapper)
: 根据条件构造器查询记录列表。IPage<T> selectPage(IPage<T> page, @Param("ew") Wrapper<T> queryWrapper)
: 分页查询记录。List<Map<String, Object>> selectMaps(@Param("ew") Wrapper<T> queryWrapper)
: 查询记录并返回 Map 列表,Map 的键为列名,值为列值。List<Object> selectObjs(@Param("ew") Wrapper<T> queryWrapper)
: 查询记录并返回 Object 列表,通常用于查询单个字段的列表。
其他
int count(@Param("ew") Wrapper<T> queryWrapper)
: 根据条件构造器查询总记录数。List<T> selectList(Wrapper<T> queryWrapper)
: 根据条件构造器查询记录列表(不带分页)。Optional<T> selectById(Serializable id, boolean useCache)
: 根据主键ID查询记录,可选是否使用缓存。
这些方法是 MyBatis-Plus 中最常用的部分,它们通过泛型、条件构造器等方式提供了强大的数据操作能力。需要注意的是,MyBatis-Plus 的具体方法可能会随着版本的更新而有所变化,因此建议查阅最新的官方文档以获取最准确的信息。
此外,MyBatis-Plus 还支持自定义 SQL 语句和 Mapper 方法,以及通过插件扩展功能,如分页插件、性能分析插件等,以满足更复杂的需求。