gpt4 book ai didi

spring-boot - spring-data-elasticsearch实体删除不推荐使用的类型

转载 作者:行者123 更新时间:2023-12-03 02:28:20 28 4
gpt4 key购买 nike

Elasticsearch将在版本8中删除_type。我正在使用ElasticRepository开发Spring Boot微服务,因此我想设置Entity以便不使用它。据我所知,如果您没有在@Document中隐式指定类型,它将使用小写形式的类名。
¿如何指定不使用类型,而不是type =“_doc”?

flex 搜寻:7.5.1
Spring 靴:2.2.1

package org.elastic.model;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;

@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
@SuppressWarnings("unused")

@Document(indexName = "basic_data",type = "_doc")
public class BasicData {

@Id
private String id;
private String field1;
private String field2;
}

最佳答案

Spring Boot 2.2.1和相应的Spring Data Elasticsearch 3.2.x使用Elasticsearch 6.8.5库。您将无法在Elasticsearch 7集群上使用此版本,因为6.8的客户端库与版本7中的服务器不兼容。

在应该在今年 Spring 发布的Spring Data Elasticsearch的下一版本中,目标Elasticsearch版本是7.5(我将在接下来的几天中将其更新为7.6)。此处,我们已弃用了用户在其中放置类型信息的代码(例如,在@Document批注中),并且不再在对Elasticsearch的基础调用中使用它。因此,暂时可以将其保留在注释中,以备下一版本使用。

Elasticsearch 8发布后,我们的下一版Spring Data Elasticsearch将使用该版本,然后我们也可能会将其从代码中删除以进行清理。

关于spring-boot - spring-data-elasticsearch实体删除不推荐使用的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60545804/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com