Interface Repository<Entity,ID>
- Type Parameters:
Entity- EntityID- ID
- All Known Subinterfaces:
AggregatableRepository<Entity,,ID> LockableRepository<Entity,ID>
public interface Repository<Entity,ID>
用于定义数据访问层的规范
- Version:
- 0.0.1
- Author:
- scx567888
-
Method Summary
Modifier and TypeMethodDescriptiondefault IDadd(FieldPolicy fieldPolicy) default IDadd(Entity entity, FieldPolicy fieldPolicy) 添加一条数据add(Collection<Entity> entityList) add(Collection<Entity> entityList, FieldPolicy fieldPolicy) 添加多条数据voidclear()清空整个数据源 (慎用)default longcount()default longlong删除数据find()find(FieldPolicy fieldPolicy) find(Query query, FieldPolicy fieldPolicy) finder()finder(FieldPolicy fieldPolicy) finder(Query query, FieldPolicy fieldPolicy) 创建一个数据查询器default Entitydefault EntityfindFirst(Query query, FieldPolicy fieldPolicy) default longupdate(FieldPolicy fieldPolicy, Query query) longupdate(Entity entity, FieldPolicy fieldPolicy, Query query) 更新数据default long
-
Method Details
-
add
添加一条数据
当 entity 为 null 时, 将使用 fieldPolicy 进行纯表达式插入
- Parameters:
entity- 待插入的数据 (可以为 null)fieldPolicy- 字段策略- Returns:
- 主键 ID (若数据没有主键, 则为 null)
- Throws:
DataAccessException
-
add
添加多条数据
因为无法判断 entityList 中每个成员的情况, 所以所有插入字段均由 fieldPolicy 提供
- Parameters:
entityList- 待插入的数据列表 (成员 可以为 null)fieldPolicy- 字段策略- Returns:
- 主键 ID 列表 (若数据没有主键, 则为 null 列表)
- Throws:
DataAccessException
-
finder
创建一个数据查询器
因为查询操作复杂度较高, 进而独立出一个 Finder 概念, 但你仍可以使用 find 来覆盖大部分场景
- Parameters:
query- 查询条件fieldPolicy- 字段策略- Returns:
- 查询器
-
update
更新数据
当 entity 为 null 时, 将使用 fieldPolicy 进行纯表达式更新, 此时要求 fieldPolicy 必须包含至少一个字段表达式
- Parameters:
entity- 需要更新的数据 (可以为 null)fieldPolicy- 字段策略query- 查询条件- Returns:
- 更新成功的条数
- Throws:
DataAccessException
-
delete
删除数据- Parameters:
query- 查询条件- Returns:
- 删除成功的条数
- Throws:
DataAccessException
-
clear
-
add
- Throws:
DataAccessException
-
add
- Throws:
DataAccessException
-
add
- Throws:
DataAccessException
-
finder
-
finder
-
finder
-
find
- Throws:
DataAccessException
-
find
- Throws:
DataAccessException
-
find
- Throws:
DataAccessException
-
find
- Throws:
DataAccessException
-
findFirst
- Throws:
DataAccessException
-
findFirst
- Throws:
DataAccessException
-
update
- Throws:
DataAccessException
-
update
- Throws:
DataAccessException
-
count
- Throws:
DataAccessException
-
count
- Throws:
DataAccessException
-