附录
附录 A:命名空间参考
元素<repositories />
该元素触发 Spring Data 存储库基础结构的设置。最重要的属性是 ,它定义要扫描 Spring Data 存储库接口的包。请参阅 “[repositories.create-instances.spring]”。下表描述了该元素的属性:<repositories />
base-package
<repositories />
名字 | 描述 |
---|---|
|
定义要扫描的包,以查找在自动检测模式下扩展的存储库接口(实际接口由特定的 Spring Data 模块确定)。也会扫描已配置包下的所有包。允许使用通配符。 |
|
定义 postfix 以自动检测自定义存储库实现。名称以配置的后缀结尾的类被视为候选类。默认为 。 |
|
确定用于创建 finder 查询的策略。有关详细信息,请参阅“[repositories.query-methods.query-lookup-strategies]”。默认为 。 |
|
定义搜索包含外部定义查询的 Properties 文件的位置。 |
|
是否应考虑嵌套的存储库接口定义。默认为 。 |
附录 B:Populators 命名空间参考
<populator /> 元素
该元素允许通过 Spring Data 存储库基础结构填充数据存储。<populator />
[1]
名字 | 描述 |
---|---|
|
在何处查找要从存储库中读取对象的文件应填充。 |
附录 C:存储库查询关键字
支持的查询方法主题关键字
下表列出了 Spring Data 存储库查询派生机制通常支持的用于表示谓词的 subject 关键字。 有关支持的关键词的确切列表,请参阅特定于商店的文档,因为此处列出的某些关键词在特定商店中可能不受支持。
关键词 | 描述 |
---|---|
|
常规查询方法,通常返回存储库类型、子类型或结果包装器(如 ,或任何其他特定于存储区的结果包装器)。可用作 ,或与其他关键字结合使用。 |
|
Exists 投影,通常返回结果。 |
|
Count 投影返回数值结果。 |
|
Delete 查询方法返回 no result () 或 delete count。 |
|
将查询结果限制为第一个结果。此关键字可以出现在主题 (和其他关键字) 和 之间的任何位置。 |
|
使用非重复查询仅返回唯一结果。请查阅特定于商店的文档,了解该功能是否受支持。此关键字可以出现在主题 (和其他关键字) 和 之间的任何位置。 |
支持的查询方法谓词关键字和修饰符
下表列出了 Spring Data 存储库查询派生机制通常支持的谓词关键字。 但是,有关支持的关键词的确切列表,请参阅特定于商店的文档,因为此处列出的某些关键词在特定商店中可能不受支持。
逻辑关键字 | 关键字表达式 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
除了 filter 谓词之外,还支持以下修饰符列表:
关键词 | 描述 |
---|---|
|
与 predicate 关键字一起使用,用于不区分大小写的比较。 |
|
对所有合适的属性忽略大小写。在查询方法谓词中的某个位置使用。 |
|
指定静态排序顺序,后跟属性 path 和 direction (例如 )。 |
附录 D:存储库查询返回类型
支持的查询返回类型
下表列出了 Spring Data 存储库通常支持的返回类型。 但是,有关支持的返回类型的确切列表,请参阅特定于 store 的文档,因为此处列出的某些类型在特定 store 中可能不受支持。
地理空间类型(如 、 和 )仅适用于支持地理空间查询的数据存储。
一些 store 模块可能会定义自己的结果包装器类型。GeoResult GeoResults GeoPage |
返回类型 | 描述 |
---|---|
|
表示无返回值。 |
原 |
Java 原语。 |
包装器类型 |
Java 包装器类型。 |
|
唯一实体。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 . |
|
一。 |
|
一个。 |
|
一个。 |
|
Java 8 或 Guava .期望 query 方法最多返回一个结果。如果未找到或返回任何结果。多个结果会触发 . |
|
Scala 或 Vavr 类型。语义上的行为与前面描述的 Java 8 的行为相同。 |
|
一个 Java 8 . |
|
该 directy 的便捷扩展公开了流式传输、映射和过滤结果、连接结果等的方法。 |
实现并采用构造函数或工厂方法参数的类型 |
公开构造函数或/或采用 as 参数的工厂方法的类型。有关详细信息,请参阅 [repositories.collections-and-iterables.streamable-wrapper]。 |
Vavr , , , |
Vavr 集合类型。有关详细信息,请参阅 [repositories.collections-and-iterables.vavr]。 |
|
一个。期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。 |
|
一个 Java 8 .期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。 |
|
一个。期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。 |
|
大小的数据块,指示是否有更多可用数据。需要 method 参数。 |
|
A 包含其他信息,例如结果总数。需要 method 参数。 |
|
包含其他信息 (例如到参考位置的距离) 的结果条目。 |
|
包含其他信息的列表,例如到参考位置的平均距离。 |
|
A 替换为 ,例如到参考位置的平均距离。 |
|
一个使用反应式存储库发出零个或一个元素的项目 Reactor。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 . |
|
一个使用反应式存储库发出零个、一个或多个元素的项目 Reactor。返回的查询也可以发出无限数量的元素。 |
|
一个 RxJava,使用反应式存储库发出单个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 . |
|
一个 RxJava,使用反应式存储库发出零个或一个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 . |
|
一个使用反应式存储库发出零个、一个或多个元素的 RxJava。返回的查询也可以发出无限数量的元素。 |