在哪里可以找到SpringDataElasticSearch配置属性的参考?

ttygqcqt  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(548)

在网上,我可以看到 spring-data-elasticsearch 有一些配置属性,您可以在 application.properties ,例如:

spring.data.elasticsearch.repositories.enabled=true
spring.data.elasticsearch.cluster-nodes=localhost:9300
spring.data.elasticsearch.cluster-name=elasticsearch

elasticsearch.index.name=my_index
elasticsearch.user.type=user

但是,在intellij中,我可以看到,例如:

spring.data.elasticsearch.cluster-nodes=localhost:9300
spring.data.elasticsearch.cluster-name=elasticsearch

... 实际上现在已经被否决了。然而,我似乎什么也找不到 spring-data-elasticsearch 列出可用属性的文档,或者列出不推荐的属性应该替换为哪些属性的文档。
欢迎任何帮助。提前谢谢!

kzipqqlq

kzipqqlq1#

这些财产来自 spring-boot-starter-data-elasticsearch ,不是来自 spring-data-elasticsearch .
正如@code\u mechanic所建议的,在spring-boot参考文档>公共应用程序属性>数据中,您可以找到当前版本spring-boot的可用属性。以下是与elasticsearch相关的一些属性:
keydefault值descriptionspring.data.elasticsearch.client.reactive.connection-timeoutconnection timeout.spring.data.elasticsearch.client.reactive.endpointscomma要连接到的elasticsearch终结点的分隔列表。spring.data.elasticsearch.client.reactive.max-in-memory-sizel限制每次需要聚合输入流。spring.data.elasticsearch.client.reactive.passwordcredentials password.spring.data.elasticsearch.client.reactive.socket-timeoutread and write socket timeout.spring.data.elasticsearch.client.reactive.use-ssl false 客户端是否应使用ssl连接到endpoints.spring.data.elasticsearch.client.reactive.usernamecdentials username.spring.data.elasticsearch.repositories.enabled true 是否启用elasticsearch repositories.spring.elasticsearch.rest.connection-timeout 1s 连接超时.spring.elasticsearch.rest.passwordcredentials password.spring.elasticsearch.rest.read-timeout 30s 读取timeout.spring.elasticsearch.rest.uris [http://localhost:9200] 要使用的elasticsearch示例的逗号分隔列表。spring.elasticsearch.rest.usernameCdentials username。
可以在中找到以前版本的spring boot的参考文档https://spring.io/projects/spring-boot#learn.
您可能还对spring boot docs>spring boot features>working with nosql technologies>elasticsearch感兴趣,它描述了如何使用rest客户机和React性rest客户机进行连接、所需的依赖关系和配置属性。

a14dhokn

a14dhokn2#

根据spring data elasticsearch的spring文档:
这个 TransportClient 从elasticsearch 7起已弃用,将在elasticsearch 8中删除。spring data elasticsearch将支持 TransportClient 只要它在使用过的elasticsearch版本中可用,但从版本开始就不推荐使用它的类 4.0 note:this would 这意味着spring团队也会反对ElasticSearch7支持的遗留属性。
现在,spring团队建议开发人员使用 RestHighLevelClient 它现在是的默认客户端 Elasticsearch . 它直接替代了 TransportClient 因为它接受并返回相同的请求/响应对象。
代码演示如下:

@Configuration
public class ElasticSearchConfig extends AbstractElasticsearchConfiguration {

    @Override
    @Bean
    public RestHighLevelClient elasticsearchClient() {

       ClientConfiguration clientConfiguration = ClientConfiguration.builder()  
            .connectedTo("localhost:9300")
            .build();

        return RestClients.create(clientConfiguration).rest();                         
    }
}

上面的配置需要通过重写默认bean来创建。此外,您不需要显式地提供集群名称。它会自动找到它。
请阅读以上链接文档以供参考,因为它包含了所有必要的信息。
请参阅:elastic search java high level rest client reference

相关问题