对于最新稳定版本,请使用Spring Data Elasticsearch 5.5.5spring-doc.cadn.net.cn

从4.1.x升级到4.2.x

本节介绍了从4.1.x版本到4.2.x的重大变更,以及如何用新引入的功能替代被移除的功能。spring-doc.cadn.net.cn

弃用

@Document参数

参数@Document与索引设置相关的注释(useServerConfiguration,碎片.副本,refreshIntervallindexStoretype)已被迁移到@Setting注解。在@Document虽然仍然可行,但已被弃用。spring-doc.cadn.net.cn

清除

@Score用于设定实体评分返回值的注释在4.0版本中被弃用并移除。 得分值会返回于搜索击中封装回归实体的实例。spring-doc.cadn.net.cn

org.springframework.data.elasticsearch.ElasticsearchException课程被取消了。 剩余的用法已被替换为org.springframework.data.mapping.MappingExceptionorg.springframework.dao.InvalidDataAccessApiUsageException.spring-doc.cadn.net.cn

已弃用的评分页面,滚动页面 @AggregatedPage实现部分已被移除。spring-doc.cadn.net.cn

已弃用的获取查询删除查询已被移除。spring-doc.cadn.net.cn

已弃用的找到方法响应式搜索作ReactiveDocumentOperations已被移除。spring-doc.cadn.net.cn

变更

刷新政策

枚举包更改

在4.1版本中,可以配置刷新策略ReactiveElasticsearch模板通过覆盖该方法AbstractReactiveElasticsearchConfiguration.refreshPolicy()在自定义配置类中。 该方法的返回值是该类的一个实例org.elasticsearch.action.support.WriteRequest.RefreshPolicy.spring-doc.cadn.net.cn

现在必须返回配置org.springframework.data.elasticsearch.core.RefreshPolicy. 这个枚举的值和触发的行为与之前相同,所以只有进口声明必须调整。spring-doc.cadn.net.cn

刷新行为

弹性搜索作响应式弹性搜索作现在明确使用以下刷新政策如果不是空,则在模板上设置写请求。 如果刷新策略为空,则不会做特殊作,因此使用集群默认值。弹性搜索作在这个版本之前我一直用集群默认设置。spring-doc.cadn.net.cn

以下为ElasticsearchRepositoryReactiveElasticsearchRepository当刷新策略为空时,会执行显式刷新。 这与之前版本的行为相同。 如果设置了刷新策略,仓库也会使用该策略。spring-doc.cadn.net.cn

刷新配置

在配置Spring Data Elasticsearch时,按照Elasticsearch客户端描述的方式使用ElasticsearchConfigurationSupport,摘要Elasticsearch配置摘要、反应性、弹性搜索配置刷新策略将初始化为. 此前响应式代码将此初始化为立即的,现在响应式和非响应式代码表现出相同的行为。spring-doc.cadn.net.cn

方法返回类型

删除方法,需要 Query

响应式方法之前返回的单声<长>由于删除文件数量众多,非响应式版本无效。他们现在回应了Mono<ByQueryResponse>其中包含了关于删除文件及可能出现错误的更详细信息。spring-doc.cadn.net.cn

多重获取方法

multiget prewiousl 的实现只返回了 a 中找到的实体List<T>对于非响应式实现和Flux<T>用于被动实现。如果请求中包含未找到的ID,则缺失这些ID的信息也无法获得。用户需要将返回的ID与请求的ID进行比对才能找到 哪些人缺失了。spring-doc.cadn.net.cn

现在多重获取方法返回多获取物品每一次申请的身份证。其中包含失败信息(如不存在的索引)以及该项是否存在(则包含在“MultiGetItem”中)。spring-doc.cadn.net.cn