public interface BaseMapper<T>
| 限定符和类型 | 方法和说明 |
|---|---|
int |
deleteBatchByIds(Collection<? extends Serializable> ids)
根据多个 id 批量删除数据
|
default int |
deleteBatchByIds(List<? extends Serializable> ids,
int size)
根据多个 id 批量删除数据
|
default int |
deleteByCondition(QueryCondition condition)
根据条件来删除数据
|
int |
deleteById(Serializable id)
根据 id 删除数据
如果是多个主键的情况下,需要传入数组 new Object[]{100,101}
|
default int |
deleteByMap(Map<String,Object> whereConditions)
根据 map 构建的条件来删除数据
|
int |
deleteByQuery(QueryWrapper queryWrapper)
根据 query 构建的条件来数据吗
|
default int |
insert(T entity)
插入 entity 数据
|
int |
insert(T entity,
boolean ignoreNulls)
插入 entity 数据
|
int |
insertBatch(List<T> entities)
批量插入 entity 数据,只会根据第一条数据来构建插入的字段内容
|
default int |
insertBatch(List<T> entities,
int size)
批量插入 entity 数据,按 size 切分
|
default int |
insertOrUpdate(T entity)
新增 或者 更新,若主键有值,则更新,若没有主键值,则插入
|
default int |
insertSelective(T entity)
插入 entity 数据,但是忽略 null 的数据,只对有值的内容进行插入
这样的好处是数据库已经配置了一些默认值,这些默认值才会生效
|
default Page<T> |
paginate(int pageNumber,
int pageSize,
int totalRow,
QueryCondition condition)
根据条件分页查询
|
default Page<T> |
paginate(int pageNumber,
int pageSize,
int totalRow,
QueryWrapper queryWrapper)
分页查询
|
default Page<T> |
paginate(int pageNumber,
int pageSize,
QueryCondition condition)
根据条件分页查询
|
default Page<T> |
paginate(int pageNumber,
int pageSize,
QueryWrapper queryWrapper)
分页查询
|
default Page<T> |
paginate(Page<T> page,
QueryWrapper queryWrapper,
Consumer<FieldQueryBuilder<T>>... consumers)
分页查询
|
default <R> Page<R> |
paginateAs(Page<R> page,
QueryWrapper queryWrapper,
Class<R> asType,
Consumer<FieldQueryBuilder<R>>... consumers) |
default List<T> |
selectAll()
查询全部数据
|
default long |
selectCountByCondition(QueryCondition condition)
根据条件查询数据总量
|
default long |
selectCountByQuery(QueryWrapper queryWrapper)
查询数据量
|
org.apache.ibatis.cursor.Cursor<T> |
selectCursorByQuery(QueryWrapper queryWrapper)
根据 query 来构建条件查询游标数据 Cursor
该方法必须在事务中才能正常使用,非事务下无法获取数据
|
default List<T> |
selectListByCondition(QueryCondition condition)
根据 condition 来查询数据
|
default List<T> |
selectListByCondition(QueryCondition condition,
int count)
根据 condition 来查询数据
|
List<T> |
selectListByIds(Collection<? extends Serializable> ids)
根据多个主键来查询多条数据
|
default List<T> |
selectListByMap(Map<String,Object> whereConditions)
根据 map 来构建查询条件,查询多条数据
|
default List<T> |
selectListByMap(Map<String,Object> whereConditions,
int count)
根据 map 来构建查询条件,查询多条数据
|
List<T> |
selectListByQuery(QueryWrapper queryWrapper)
根据 query 来构建条件查询数据列表
|
default List<T> |
selectListByQuery(QueryWrapper queryWrapper,
Consumer<FieldQueryBuilder<T>>... consumers) |
default <R> List<R> |
selectListByQueryAs(QueryWrapper queryWrapper,
Class<R> asType)
根据 query 来构建条件查询数据列表,要求返回的数据为 asType
这种场景一般用在 left join 时,有多出了 entity 本身的字段内容,可以转换为 dto、vo 等场景时
|
default <R> List<R> |
selectListByQueryAs(QueryWrapper queryWrapper,
Class<R> asType,
Consumer<FieldQueryBuilder<R>>... consumers) |
default Object |
selectObjectByQuery(QueryWrapper queryWrapper)
根据 queryWrapper 1 条数据
queryWrapper 执行的结果应该只有 1 列,例如 QueryWrapper.create().select(ACCOUNT.id).where...
|
List<Object> |
selectObjectListByQuery(QueryWrapper queryWrapper)
根据 queryWrapper 来查询数据列表
queryWrapper 执行的结果应该只有 1 列,例如 QueryWrapper.create().select(ACCOUNT.id).where...
|
default <R> List<R> |
selectObjectListByQueryAs(QueryWrapper queryWrapper,
Class<R> asType)
对
selectObjectListByQuery(QueryWrapper) 进行数据转换
根据 queryWrapper 来查询数据列表
queryWrapper 执行的结果应该只有 1 列,例如 QueryWrapper.create().select(ACCOUNT.id).where... |
default T |
selectOneByCondition(QueryCondition condition)
根据 condition 来查询数据
|
T |
selectOneById(Serializable id)
根据主键来选择数据
|
default T |
selectOneByMap(Map<String,Object> whereConditions)
根据 map 构建的条件来查询数据
|
default T |
selectOneByQuery(QueryWrapper queryWrapper)
根据 queryWrapper 构建的条件来查询 1 条数据
|
default <R> R |
selectOneByQueryAs(QueryWrapper queryWrapper,
Class<R> asType)
根据 queryWrapper 构建的条件来查询 1 条数据
|
default int |
update(T entity)
根据主键来更新数据,若 entity 属性数据为 null,该属性不会新到数据库
|
int |
update(T entity,
boolean ignoreNulls)
根据主键来更新数据到数据库
|
default int |
updateByCondition(T entity,
boolean ignoreNulls,
QueryCondition condition)
根据 condition 来更新数据
|
default int |
updateByCondition(T entity,
QueryCondition condition)
根据 condition 来更新数据
|
default int |
updateByMap(T entity,
Map<String,Object> map)
根据 map 构建的条件来更新数据
|
int |
updateByQuery(T entity,
boolean ignoreNulls,
QueryWrapper queryWrapper)
根据 query 构建的条件来更新数据
|
default int |
updateByQuery(T entity,
QueryWrapper queryWrapper)
根据 query 构建的条件来更新数据
|
default int |
updateNumberAddByQuery(LambdaGetter<T> fn,
Number value,
QueryWrapper queryWrapper)
执行类似 update table set field=field+1 where ...
|
int |
updateNumberAddByQuery(String fieldName,
Number value,
QueryWrapper queryWrapper)
执行类似 update table set field=field+1 where ...
|
default int insertSelective(T entity)
entity - 实体类@InsertProvider(type=EntitySqlProvider.class, method="insert") int insert(@Param(value="$$entity") T entity, @Param(value="$$ignoreNulls") boolean ignoreNulls)
entity - 实体类EntitySqlProvider.insert(Map, ProviderContext)@InsertProvider(type=EntitySqlProvider.class, method="insertBatch") int insertBatch(@Param(value="$$entities") List<T> entities)
entities - 插入的数据列表EntitySqlProvider.insertBatch(Map, ProviderContext),
FlexConsts.METHOD_INSERT_BATCHdefault int insertBatch(List<T> entities, int size)
entities - 插入的数据列表size - 切分大小default int insertOrUpdate(T entity)
entity - 实体类@DeleteProvider(type=EntitySqlProvider.class, method="deleteById") int deleteById(@Param(value="$$primaryValue") Serializable id)
id - 主键数据EntitySqlProvider.deleteById(Map, ProviderContext)@DeleteProvider(type=EntitySqlProvider.class, method="deleteBatchByIds") int deleteBatchByIds(@Param(value="$$primaryValue") Collection<? extends Serializable> ids)
ids - ids 列表EntitySqlProvider.deleteBatchByIds(Map, ProviderContext)default int deleteBatchByIds(List<? extends Serializable> ids, int size)
ids - ids 列表size - 切分大小EntitySqlProvider.deleteBatchByIds(Map, ProviderContext)default int deleteByMap(Map<String,Object> whereConditions)
whereConditions - 条件default int deleteByCondition(QueryCondition condition)
condition - 条件@DeleteProvider(type=EntitySqlProvider.class, method="deleteByQuery") int deleteByQuery(@Param(value="$$query") QueryWrapper queryWrapper)
queryWrapper - query 条件EntitySqlProvider.deleteByQuery(Map, ProviderContext)default int update(T entity)
entity - 数据内容,必须包含有主键@UpdateProvider(type=EntitySqlProvider.class, method="update") int update(@Param(value="$$entity") T entity, @Param(value="$$ignoreNulls") boolean ignoreNulls)
entity - 数据内容ignoreNulls - 是否忽略空内容字段EntitySqlProvider.update(Map, ProviderContext)default int updateByMap(T entity, Map<String,Object> map)
entity - 数据map - where 条件内容default int updateByCondition(T entity, QueryCondition condition)
entity - 数据condition - 条件default int updateByCondition(T entity, boolean ignoreNulls, QueryCondition condition)
entity - 数据ignoreNulls - 是否忽略 null 数据,默认为 truecondition - 条件default int updateByQuery(T entity, QueryWrapper queryWrapper)
entity - 数据内容queryWrapper - query 条件@UpdateProvider(type=EntitySqlProvider.class, method="updateByQuery") int updateByQuery(@Param(value="$$entity") T entity, @Param(value="$$ignoreNulls") boolean ignoreNulls, @Param(value="$$query") QueryWrapper queryWrapper)
entity - 数据内容ignoreNulls - 是否忽略空值queryWrapper - query 条件EntitySqlProvider.updateByQuery(Map, ProviderContext)@UpdateProvider(type=EntitySqlProvider.class, method="updateNumberAddByQuery") int updateNumberAddByQuery(@Param(value="$$fieldName") String fieldName, @Param(value="$$value") Number value, @Param(value="$$query") QueryWrapper queryWrapper)
fieldName - 字段名value - 值( >=0 加,小于 0 减)queryWrapper - 条件EntitySqlProvider.updateNumberAddByQuery(Map, ProviderContext)default int updateNumberAddByQuery(LambdaGetter<T> fn, Number value, QueryWrapper queryWrapper)
fn - 字段名value - 值( >=0 加,小于 0 减)queryWrapper - 条件EntitySqlProvider.updateNumberAddByQuery(Map, ProviderContext)@SelectProvider(type=EntitySqlProvider.class, method="selectOneById") T selectOneById(@Param(value="$$primaryValue") Serializable id)
id - 多个主键EntitySqlProvider.selectOneById(Map, ProviderContext)default T selectOneByMap(Map<String,Object> whereConditions)
whereConditions - where 条件default T selectOneByCondition(QueryCondition condition)
condition - 条件default T selectOneByQuery(QueryWrapper queryWrapper)
queryWrapper - query 条件default <R> R selectOneByQueryAs(QueryWrapper queryWrapper, Class<R> asType)
queryWrapper - query 条件asType - 接收类型@SelectProvider(type=EntitySqlProvider.class, method="selectListByIds") List<T> selectListByIds(@Param(value="$$primaryValue") Collection<? extends Serializable> ids)
ids - 主键列表EntitySqlProvider.selectListByIds(Map, ProviderContext)default List<T> selectListByMap(Map<String,Object> whereConditions)
whereConditions - 条件列表default List<T> selectListByMap(Map<String,Object> whereConditions, int count)
whereConditions - 条件列表default List<T> selectListByCondition(QueryCondition condition)
condition - condition 条件default List<T> selectListByCondition(QueryCondition condition, int count)
condition - condition 条件count - 数据量@SelectProvider(type=EntitySqlProvider.class, method="selectListByQuery") List<T> selectListByQuery(@Param(value="$$query") QueryWrapper queryWrapper)
queryWrapper - 查询条件EntitySqlProvider.selectListByQuery(Map, ProviderContext)default List<T> selectListByQuery(QueryWrapper queryWrapper, Consumer<FieldQueryBuilder<T>>... consumers)
@SelectProvider(type=EntitySqlProvider.class, method="selectListByQuery") org.apache.ibatis.cursor.Cursor<T> selectCursorByQuery(@Param(value="$$query") QueryWrapper queryWrapper)
queryWrapper - 查询条件default <R> List<R> selectListByQueryAs(QueryWrapper queryWrapper, Class<R> asType)
queryWrapper - 查询条件asType - 接收数据类型default <R> List<R> selectListByQueryAs(QueryWrapper queryWrapper, Class<R> asType, Consumer<FieldQueryBuilder<R>>... consumers)
default Object selectObjectByQuery(QueryWrapper queryWrapper)
queryWrapper - 查询包装器@SelectProvider(type=EntitySqlProvider.class, method="selectObjectByQuery") List<Object> selectObjectListByQuery(@Param(value="$$query") QueryWrapper queryWrapper)
queryWrapper - 查询包装器EntitySqlProvider.selectObjectByQuery(Map, ProviderContext)default <R> List<R> selectObjectListByQueryAs(QueryWrapper queryWrapper, Class<R> asType)
selectObjectListByQuery(QueryWrapper) 进行数据转换
根据 queryWrapper 来查询数据列表
queryWrapper 执行的结果应该只有 1 列,例如 QueryWrapper.create().select(ACCOUNT.id).where...queryWrapper - 查询包装器asType - 转换成的数据类型default long selectCountByQuery(QueryWrapper queryWrapper)
queryWrapper - 查询包装器default long selectCountByCondition(QueryCondition condition)
condition - 条件default Page<T> paginate(int pageNumber, int pageSize, QueryWrapper queryWrapper)
pageNumber - 当前页码pageSize - 每页的数据量queryWrapper - 查询条件default Page<T> paginate(int pageNumber, int pageSize, QueryCondition condition)
pageNumber - 当前页面pageSize - 每页的数据量condition - 查询条件default Page<T> paginate(int pageNumber, int pageSize, int totalRow, QueryWrapper queryWrapper)
pageNumber - 当前页码pageSize - 每页的数据量totalRow - 数据总量queryWrapper - 查询条件default Page<T> paginate(int pageNumber, int pageSize, int totalRow, QueryCondition condition)
pageNumber - 当前页面pageSize - 每页的数据量totalRow - 数据总量condition - 查询条件default Page<T> paginate(Page<T> page, QueryWrapper queryWrapper, Consumer<FieldQueryBuilder<T>>... consumers)
page - page,其包含了页码、每页的数据量,可能包含数据总量queryWrapper - 查询条件default <R> Page<R> paginateAs(Page<R> page, QueryWrapper queryWrapper, Class<R> asType, Consumer<FieldQueryBuilder<R>>... consumers)
Copyright © 2023. All rights reserved.