接口 IService<T>
- 所有已知实现类:
ServiceImpl
public interface IService<T>
顶级 Service
- 从以下版本开始:
- 2018-06-23
- 作者:
- hubin
-
字段概要
字段 -
方法概要
修饰符和类型方法说明default longcount()查询总记录数default long根据 Wrapper 条件,查询总记录数default boolean查询指定条件是否存在数据com.baomidou.mybatisplus.core.mapper.BaseMapper<T> 获取对应 entity 的 BaseMapperdefault TgetById(Serializable id) 根据 ID 查询获取 entity 的 class根据 Wrapper,查询一条记录<V> VgetObj(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<? super Object, V> mapper) 根据 Wrapper,查询一条记录default T根据 Wrapper,查询一条记录根据 Wrapper,查询一条记录根据 Wrapper,查询一条记录根据 Wrapper,查询一条记录根据 ID 查询,返回一个Option对象default com.baomidou.mybatisplus.extension.kotlin.KtQueryChainWrapper<T> ktQuery()链式查询 lambda 式 kotlin 使用default com.baomidou.mybatisplus.extension.kotlin.KtUpdateChainWrapper<T> ktUpdate()链式查询 lambda 式 kotlin 使用default LambdaQueryChainWrapper<T> 链式查询 lambda 式default LambdaQueryChainWrapper<T> lambdaQuery(T entity) 链式查询 lambda 式default LambdaUpdateChainWrapper<T> 链式更改 lambda 式list()查询所有查询列表分页查询单表数据list(com.baomidou.mybatisplus.core.metadata.IPage<T> page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 查询列表listByIds(Collection<? extends Serializable> idList) 查询(根据ID 批量查询)查询(根据 columnMap 条件)listMaps()查询所有列表查询列表查询列表listMaps(com.baomidou.mybatisplus.core.metadata.IPage<? extends Map<String, Object>> page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 查询列表default <E> List<E> listObjs()查询全部记录default <E> List<E> 根据 Wrapper 条件,查询全部记录default <V> List<V> listObjs(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<? super Object, V> mapper) 根据 Wrapper 条件,查询全部记录default <V> List<V> 查询全部记录default <E extends com.baomidou.mybatisplus.core.metadata.IPage<T>>
Epage(E page) 无条件翻页查询default <E extends com.baomidou.mybatisplus.core.metadata.IPage<T>>
E翻页查询pageMaps(E page) 无条件翻页查询翻页查询default QueryChainWrapper<T> query()链式查询 普通default boolean根据 entity 条件,删除记录default booleanremoveBatchByIds(Collection<?> list) 批量删除(jdbc批量提交)default booleanremoveBatchByIds(Collection<?> list, boolean useFill) 批量删除(jdbc批量提交)default booleanremoveBatchByIds(Collection<?> list, int batchSize) 批量删除(jdbc批量提交)default booleanremoveBatchByIds(Collection<?> list, int batchSize, boolean useFill) 批量删除(jdbc批量提交)default boolean根据 ID 删除default booleanremoveById(Serializable id, boolean useFill) 根据 ID 删除default booleanremoveById(T entity) 根据实体(ID)删除default booleanremoveByIds(Collection<?> list) 删除(根据ID 批量删除)default booleanremoveByIds(Collection<?> list, boolean useFill) 批量删除default booleanremoveByMap(Map<String, Object> columnMap) 根据 columnMap 条件,删除记录default boolean插入一条记录(选择字段,策略插入)default booleansaveBatch(Collection<T> entityList) 插入(批量)booleansaveBatch(Collection<T> entityList, int batchSize) 插入(批量)booleansaveOrUpdate(T entity) TableId 注解存在更新记录,否插入一条记录default booleansaveOrUpdate(T entity, com.baomidou.mybatisplus.core.conditions.Wrapper<T> updateWrapper) 已过时。default booleansaveOrUpdateBatch(Collection<T> entityList) 批量修改插入booleansaveOrUpdateBatch(Collection<T> entityList, int batchSize) 批量修改插入default UpdateChainWrapper<T> update()链式更改 普通default boolean根据 UpdateWrapper 条件,更新记录 需要设置sqlsetdefault boolean根据 whereEntity 条件,更新记录default booleanupdateBatchById(Collection<T> entityList) 根据ID 批量更新booleanupdateBatchById(Collection<T> entityList, int batchSize) 根据ID 批量更新default booleanupdateById(T entity) 根据 ID 选择修改
-
字段详细资料
-
DEFAULT_BATCH_SIZE
static final int DEFAULT_BATCH_SIZE默认批次提交数量- 另请参阅:
-
-
方法详细资料
-
save
插入一条记录(选择字段,策略插入)- 参数:
entity- 实体对象
-
saveBatch
@Transactional(rollbackFor=java.lang.Exception.class) default boolean saveBatch(Collection<T> entityList) 插入(批量)- 参数:
entityList- 实体对象集合
-
saveBatch
插入(批量)- 参数:
entityList- 实体对象集合batchSize- 插入批次数量
-
saveOrUpdateBatch
@Transactional(rollbackFor=java.lang.Exception.class) default boolean saveOrUpdateBatch(Collection<T> entityList) 批量修改插入- 参数:
entityList- 实体对象集合
-
saveOrUpdateBatch
批量修改插入- 参数:
entityList- 实体对象集合batchSize- 每次的数量
-
removeById
根据 ID 删除- 参数:
id- 主键ID
-
removeById
根据 ID 删除- 参数:
id- 主键(类型必须与实体类型字段保持一致)useFill- 是否启用填充(为true的情况,会将入参转换实体进行delete删除)- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
removeById
根据实体(ID)删除- 参数:
entity- 实体- 从以下版本开始:
- 3.4.4
-
removeByMap
根据 columnMap 条件,删除记录- 参数:
columnMap- 表字段 map 对象
-
remove
根据 entity 条件,删除记录- 参数:
queryWrapper- 实体包装类QueryWrapper
-
removeByIds
删除(根据ID 批量删除)- 参数:
list- 主键ID或实体列表
-
removeByIds
@Transactional(rollbackFor=java.lang.Exception.class) default boolean removeByIds(Collection<?> list, boolean useFill) 批量删除- 参数:
list- 主键ID或实体列表useFill- 是否填充(为true的情况,会将入参转换实体进行delete删除)- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
removeBatchByIds
@Transactional(rollbackFor=java.lang.Exception.class) default boolean removeBatchByIds(Collection<?> list) 批量删除(jdbc批量提交)- 参数:
list- 主键ID或实体列表(主键ID类型必须与实体类型字段保持一致)- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
removeBatchByIds
@Transactional(rollbackFor=java.lang.Exception.class) default boolean removeBatchByIds(Collection<?> list, boolean useFill) 批量删除(jdbc批量提交)- 参数:
list- 主键ID或实体列表(主键ID类型必须与实体类型字段保持一致)useFill- 是否启用填充(为true的情况,会将入参转换实体进行delete删除)- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
removeBatchByIds
批量删除(jdbc批量提交)- 参数:
list- 主键ID或实体列表batchSize- 批次大小- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
removeBatchByIds
批量删除(jdbc批量提交)- 参数:
list- 主键ID或实体列表batchSize- 批次大小useFill- 是否启用填充(为true的情况,会将入参转换实体进行delete删除)- 返回:
- 删除结果
- 从以下版本开始:
- 3.5.0
-
updateById
根据 ID 选择修改- 参数:
entity- 实体对象
-
update
根据 UpdateWrapper 条件,更新记录 需要设置sqlset此方法无法进行自动填充,如需自动填充请使用
update(Object, Wrapper)- 参数:
updateWrapper- 实体对象封装操作类UpdateWrapper
-
update
根据 whereEntity 条件,更新记录- 参数:
entity- 实体对象(当entity为空时无法进行自动填充)updateWrapper- 实体对象封装操作类UpdateWrapper
-
updateBatchById
@Transactional(rollbackFor=java.lang.Exception.class) default boolean updateBatchById(Collection<T> entityList) 根据ID 批量更新- 参数:
entityList- 实体对象集合
-
updateBatchById
根据ID 批量更新- 参数:
entityList- 实体对象集合batchSize- 更新批次数量
-
saveOrUpdate
TableId 注解存在更新记录,否插入一条记录- 参数:
entity- 实体对象
-
getById
根据 ID 查询- 参数:
id- 主键ID
-
getOptById
根据 ID 查询,返回一个Option对象- 参数:
id- 主键ID- 返回:
Optional
-
listByIds
查询(根据ID 批量查询)- 参数:
idList- 主键ID列表
-
listByMap
查询(根据 columnMap 条件)- 参数:
columnMap- 表字段 map 对象
-
getOne
根据 Wrapper,查询一条记录
结果集,如果是多个会抛出异常,随机取一条加上限制条件 wrapper.last("LIMIT 1")
- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
getOneOpt
根据 Wrapper,查询一条记录
结果集,如果是多个会抛出异常,随机取一条加上限制条件 wrapper.last("LIMIT 1")
- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper- 返回:
Optional返回一个Optional对象
-
getOne
根据 Wrapper,查询一条记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrapperthrowEx- 有多个 result 是否抛出异常
-
getOneOpt
Optional<T> getOneOpt(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, boolean throwEx) 根据 Wrapper,查询一条记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrapperthrowEx- 有多个 result 是否抛出异常- 返回:
Optional返回一个Optional对象
-
getMap
根据 Wrapper,查询一条记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
getObj
<V> V getObj(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<? super Object, V> mapper) 根据 Wrapper,查询一条记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrappermapper- 转换函数
-
exists
查询指定条件是否存在数据- 另请参阅:
-
count
default long count()查询总记录数- 另请参阅:
-
count
根据 Wrapper 条件,查询总记录数- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
list
查询列表- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
list
default List<T> list(com.baomidou.mybatisplus.core.metadata.IPage<T> page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 查询列表- 参数:
page- 分页条件queryWrapper- queryWrapper 实体对象封装操作类QueryWrapper- 返回:
- 列表数据
- 从以下版本开始:
- 3.5.3.2
-
list
查询所有- 另请参阅:
-
list
分页查询单表数据- 参数:
page- 分页条件- 返回:
- 列表数据
- 从以下版本开始:
- 3.5.3.2
-
page
default <E extends com.baomidou.mybatisplus.core.metadata.IPage<T>> E page(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 翻页查询- 参数:
page- 翻页对象queryWrapper- 实体对象封装操作类QueryWrapper
-
page
无条件翻页查询- 参数:
page- 翻页对象- 另请参阅:
-
listMaps
default List<Map<String,Object>> listMaps(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 查询列表- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
listMaps
default List<Map<String,Object>> listMaps(com.baomidou.mybatisplus.core.metadata.IPage<? extends Map<String, Object>> page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 查询列表- 参数:
page- 分页条件queryWrapper- 实体对象封装操作类QueryWrapper- 返回:
- 列表数据
- 从以下版本开始:
- 3.5.3.2
-
listMaps
查询所有列表- 另请参阅:
-
listMaps
default List<Map<String,Object>> listMaps(com.baomidou.mybatisplus.core.metadata.IPage<? extends Map<String, Object>> page) 查询列表- 参数:
page- 分页条件- 另请参阅:
-
listObjs
查询全部记录 -
listObjs
查询全部记录- 参数:
mapper- 转换函数
-
listObjs
根据 Wrapper 条件,查询全部记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrapper
-
listObjs
default <V> List<V> listObjs(com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper, Function<? super Object, V> mapper) 根据 Wrapper 条件,查询全部记录- 参数:
queryWrapper- 实体对象封装操作类QueryWrappermapper- 转换函数
-
pageMaps
default <E extends com.baomidou.mybatisplus.core.metadata.IPage<Map<String,Object>>> E pageMaps(E page, com.baomidou.mybatisplus.core.conditions.Wrapper<T> queryWrapper) 翻页查询- 参数:
page- 翻页对象queryWrapper- 实体对象封装操作类QueryWrapper
-
pageMaps
default <E extends com.baomidou.mybatisplus.core.metadata.IPage<Map<String,Object>>> E pageMaps(E page) 无条件翻页查询- 参数:
page- 翻页对象- 另请参阅:
-
getBaseMapper
com.baomidou.mybatisplus.core.mapper.BaseMapper<T> getBaseMapper()获取对应 entity 的 BaseMapper- 返回:
- BaseMapper
-
getEntityClass
获取 entity 的 class -
query
链式查询 普通- 返回:
- QueryWrapper 的包装类
-
lambdaQuery
链式查询 lambda 式注意:不支持 Kotlin
- 返回:
- LambdaQueryWrapper 的包装类
-
lambdaQuery
链式查询 lambda 式注意:不支持 Kotlin
- 参数:
entity- 实体对象- 返回:
- LambdaQueryWrapper 的包装类
-
ktQuery
链式查询 lambda 式 kotlin 使用- 返回:
- KtQueryWrapper 的包装类
-
ktUpdate
链式查询 lambda 式 kotlin 使用- 返回:
- KtQueryWrapper 的包装类
-
update
链式更改 普通- 返回:
- UpdateWrapper 的包装类
-
lambdaUpdate
链式更改 lambda 式注意:不支持 Kotlin
- 返回:
- LambdaUpdateWrapper 的包装类
-
saveOrUpdate
@Deprecated default boolean saveOrUpdate(T entity, com.baomidou.mybatisplus.core.conditions.Wrapper<T> updateWrapper) 已过时。根据updateWrapper尝试更新,否继续执行saveOrUpdate(T)方法 此次修改主要是减少了此项业务代码的代码量(存在性验证之后的saveOrUpdate操作)
该方法不推荐在多线程并发下使用,并发可能存在间隙锁的问题,可以采用先查询后判断是否更新或保存。
该方法存在安全隐患将在后续大版本删除
- 参数:
entity- 实体对象
-