MybatisPlus在Mybatis的基础上进行了增强,进一步简化了SQL的编写。对于普通的单表的CRUD,MyBatisPlus提过了相关接口进行快速操作。比如:
insert(T entity): 插入一个实体,null的属性也会保存,不会使用数据库默认值。
deleteById(Serializable id): 根据主键ID删除记录。
deleteByMap(Map<String, Object> columnMap): 根据列名和对应值删除记录。
delete(Wrapper<T> wrapper): 根据条件构造器删除记录。
updateById(T entity): 根据主键ID更新记录,null值条件会被忽略。
update(T entity, Wrapper<T> updateWrapper): 根据Where条件构造器更新记录,空值条件会被忽略。
selectById(Serializable id): 根据主键ID查询记录。
selectBatchIds(Collection<? extends Serializable> idList): 根据多个主键ID批量查询。
selectByMap(Map<String, Object> columnMap): 根据列名和对应值查询。
selectOne(Wrapper<T> queryWrapper): 根据条件构造器查询一条记录。
selectList(Wrapper<T> queryWrapper): 根据条件构造器查询多条记录。
selectMaps(Wrapper<T> queryWrapper): 根据条件构造器查询多条记录,并返回一个Map列表。
selectCount(Wrapper<T> queryWrapper): 根据条件构造器查询记录数
此外MybatisPlus还支持使用查询构造器 QueryWrapper
或者 LambdaQueryWrapper
来进行一些复杂的查询。