- 类型参数:
T- 实体类型ID- 主键类型
- 所有超级接口:
AutoCloseable
面向单一实体类型的通用数据仓库。
实体字段与数据库列的映射由数据库注解声明。查询、流与分页结果的具体一致性 由运行时实现保证。
-
方法概要
修饰符和类型方法说明default voidclose()关闭仓库并释放实现持有的资源。longcount()void删除全部实体。voiddeleteById(ID id) 根据主键删除实体。booleanexistsById(ID id) 判断指定主键是否存在。findAll()查询全部实体。findAllWhere(String where, Object... params) 按条件表达式查询实体。根据主键查找实体。findOneWhere(String column, Object value) 查询指定列等于给定值的第一条实体。default voidflush()将当前仓库中尚未提交的修改写入数据库。按查询条件返回分页结果。新增或更新实体。voidsaveAll(Collection<T> entities) 批量保存实体。以流形式遍历全部实体。
-
方法详细资料
-
save
新增或更新实体。- 参数:
e- 待保存实体- 返回:
- 保存后的实体
-
deleteById
根据主键删除实体。- 参数:
id- 主键
-
findById
根据主键查找实体。- 参数:
id- 主键- 返回:
- 实体;不存在时为空
-
findAll
查询全部实体。- 返回:
- 查询结果
-
query
按查询条件返回分页结果。- 参数:
spec- 查询条件- 返回:
- 分页结果
-
count
long count()- 返回:
- 当前实体表中的记录数
-
existsById
判断指定主键是否存在。- 参数:
id- 主键- 返回:
- 存在时为
true
-
deleteAll
void deleteAll()删除全部实体。 -
saveAll
批量保存实体。- 参数:
entities- 待保存实体集合
-
streamAll
以流形式遍历全部实体。调用方应关闭返回的流,以便实现释放数据库资源。
- 返回:
- 实体流
-
findOneWhere
查询指定列等于给定值的第一条实体。- 参数:
column- 实体字段名或实现支持的列名value- 比较值- 返回:
- 首条匹配实体;不存在时为空
-
flush
default void flush()将当前仓库中尚未提交的修改写入数据库。 -
close
default void close()关闭仓库并释放实现持有的资源。- 指定者:
close在接口中AutoCloseable
-
findAllWhere
按条件表达式查询实体。默认实现仅支持单个“字段 = ?”条件,并在内存中筛选
findAll()的结果; 数据库运行时应覆盖此方法以执行原生参数化查询。无法识别条件时,默认实现返回全部实体。- 参数:
where- 条件表达式params- 参数值- 返回:
- 匹配实体列表
-