此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Data Elasticsearch 5.3.4spring-doc.cn

此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Data Elasticsearch 5.3.4spring-doc.cn

支持的查询返回类型

下表列出了 Spring Data 存储库通常支持的返回类型。 但是,有关支持的返回类型的确切列表,请参阅特定于 store 的文档,因为此处列出的某些类型在特定 store 中可能不受支持。spring-doc.cn

地理空间类型(如 、 和 )仅适用于支持地理空间查询的数据存储。 一些 store 模块可能会定义自己的结果包装器类型。GeoResultGeoResultsGeoPage
表 1.查询返回类型
返回类型 描述

voidspring-doc.cn

表示无返回值。spring-doc.cn

spring-doc.cn

Java 原语。spring-doc.cn

包装器类型spring-doc.cn

Java 包装器类型。spring-doc.cn

Tspring-doc.cn

唯一实体。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .nullIncorrectResultSizeDataAccessExceptionspring-doc.cn

Iterator<T>spring-doc.cn

一。Iteratorspring-doc.cn

Collection<T>spring-doc.cn

一个。Collectionspring-doc.cn

List<T>spring-doc.cn

一个。Listspring-doc.cn

Optional<T>spring-doc.cn

Java 8 或 Guava .期望 query 方法最多返回一个结果。如果未找到或返回任何结果。多个结果会触发 .OptionalOptional.empty()Optional.absent()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Option<T>spring-doc.cn

Scala 或 Vavr 类型。语义上的行为与前面描述的 Java 8 的行为相同。OptionOptionalspring-doc.cn

Stream<T>spring-doc.cn

一个 Java 8 .Streamspring-doc.cn

Streamable<T>spring-doc.cn

它的一个方便的扩展直接公开了流、映射和过滤结果、连接它们等的方法。Iterablespring-doc.cn

实现并采用构造函数或工厂方法参数的类型StreamableStreamablespring-doc.cn

公开构造函数或/或采用 as 参数的工厂方法的类型。有关详细信息,请参阅返回自定义 Streamable Wrapper 类型….of(…)….valueOf(…)Streamablespring-doc.cn

Vavr , , ,SeqListMapSetspring-doc.cn

Vavr 集合类型。有关详细信息,请参阅支持 Vavr 集合spring-doc.cn

Future<T>spring-doc.cn

一个。期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。Future@Asyncspring-doc.cn

CompletableFuture<T>spring-doc.cn

一个 Java 8 .期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。CompletableFuture@Asyncspring-doc.cn

Slice<T>spring-doc.cn

大小的数据块,指示是否有更多可用数据。需要 method 参数。Pageablespring-doc.cn

Page<T>spring-doc.cn

A 包含其他信息,例如结果总数。需要 method 参数。SlicePageablespring-doc.cn

Window<T>spring-doc.cn

从滚动查询获得的结果。用于发出下一个滚动查询。需要 method 参数。WindowScrollPositionScrollPositionspring-doc.cn

GeoResult<T>spring-doc.cn

包含其他信息 (例如到参考位置的距离) 的结果条目。spring-doc.cn

GeoResults<T>spring-doc.cn

包含其他信息的列表,例如到参考位置的平均距离。GeoResult<T>spring-doc.cn

GeoPage<T>spring-doc.cn

A 替换为 ,例如到参考位置的平均距离。PageGeoResult<T>spring-doc.cn

Mono<T>spring-doc.cn

一个使用反应式存储库发出零个或一个元素的项目 Reactor。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .MonoMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Flux<T>spring-doc.cn

一个使用反应式存储库发出零个、一个或多个元素的项目 Reactor。返回的查询也可以发出无限数量的元素。FluxFluxspring-doc.cn

Single<T>spring-doc.cn

一个 RxJava,使用反应式存储库发出单个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .SingleMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Maybe<T>spring-doc.cn

一个 RxJava,使用反应式存储库发出零个或一个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .MaybeMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Flowable<T>spring-doc.cn

一个使用反应式存储库发出零个、一个或多个元素的 RxJava。返回的查询也可以发出无限数量的元素。FlowableFlowablespring-doc.cn

地理空间类型(如 、 和 )仅适用于支持地理空间查询的数据存储。 一些 store 模块可能会定义自己的结果包装器类型。GeoResultGeoResultsGeoPage
表 1.查询返回类型
返回类型 描述

voidspring-doc.cn

表示无返回值。spring-doc.cn

spring-doc.cn

Java 原语。spring-doc.cn

包装器类型spring-doc.cn

Java 包装器类型。spring-doc.cn

Tspring-doc.cn

唯一实体。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .nullIncorrectResultSizeDataAccessExceptionspring-doc.cn

Iterator<T>spring-doc.cn

一。Iteratorspring-doc.cn

Collection<T>spring-doc.cn

一个。Collectionspring-doc.cn

List<T>spring-doc.cn

一个。Listspring-doc.cn

Optional<T>spring-doc.cn

Java 8 或 Guava .期望 query 方法最多返回一个结果。如果未找到或返回任何结果。多个结果会触发 .OptionalOptional.empty()Optional.absent()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Option<T>spring-doc.cn

Scala 或 Vavr 类型。语义上的行为与前面描述的 Java 8 的行为相同。OptionOptionalspring-doc.cn

Stream<T>spring-doc.cn

一个 Java 8 .Streamspring-doc.cn

Streamable<T>spring-doc.cn

它的一个方便的扩展直接公开了流、映射和过滤结果、连接它们等的方法。Iterablespring-doc.cn

实现并采用构造函数或工厂方法参数的类型StreamableStreamablespring-doc.cn

公开构造函数或/或采用 as 参数的工厂方法的类型。有关详细信息,请参阅返回自定义 Streamable Wrapper 类型….of(…)….valueOf(…)Streamablespring-doc.cn

Vavr , , ,SeqListMapSetspring-doc.cn

Vavr 集合类型。有关详细信息,请参阅支持 Vavr 集合spring-doc.cn

Future<T>spring-doc.cn

一个。期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。Future@Asyncspring-doc.cn

CompletableFuture<T>spring-doc.cn

一个 Java 8 .期望使用方法进行注释,并需要启用 Spring 的异步方法执行功能。CompletableFuture@Asyncspring-doc.cn

Slice<T>spring-doc.cn

大小的数据块,指示是否有更多可用数据。需要 method 参数。Pageablespring-doc.cn

Page<T>spring-doc.cn

A 包含其他信息,例如结果总数。需要 method 参数。SlicePageablespring-doc.cn

Window<T>spring-doc.cn

从滚动查询获得的结果。用于发出下一个滚动查询。需要 method 参数。WindowScrollPositionScrollPositionspring-doc.cn

GeoResult<T>spring-doc.cn

包含其他信息 (例如到参考位置的距离) 的结果条目。spring-doc.cn

GeoResults<T>spring-doc.cn

包含其他信息的列表,例如到参考位置的平均距离。GeoResult<T>spring-doc.cn

GeoPage<T>spring-doc.cn

A 替换为 ,例如到参考位置的平均距离。PageGeoResult<T>spring-doc.cn

Mono<T>spring-doc.cn

一个使用反应式存储库发出零个或一个元素的项目 Reactor。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .MonoMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Flux<T>spring-doc.cn

一个使用反应式存储库发出零个、一个或多个元素的项目 Reactor。返回的查询也可以发出无限数量的元素。FluxFluxspring-doc.cn

Single<T>spring-doc.cn

一个 RxJava,使用反应式存储库发出单个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .SingleMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Maybe<T>spring-doc.cn

一个 RxJava,使用反应式存储库发出零个或一个元素。期望 query 方法最多返回一个结果。如果未找到结果,则返回。多个结果会触发 .MaybeMono.empty()IncorrectResultSizeDataAccessExceptionspring-doc.cn

Flowable<T>spring-doc.cn

一个使用反应式存储库发出零个、一个或多个元素的 RxJava。返回的查询也可以发出无限数量的元素。FlowableFlowablespring-doc.cn