Elasticsearch Spring 数据与 RestHighLevelClient
Elasticsearch Spring Data with RestHighLevelClient
我不明白高级 REST 客户端(它取代了传输客户端)和 Spring Data Elasticsearch 之间的关系。
有一些教程 (https://www.baeldung.com/spring-data-elasticsearch-tutorial) 展示了如何使用 getSomethingById() 等自动实现的方法进行 JPA 样式的查询。他们使用这个界面:
public interface ElasticsearchRepository<T, ID extends Serializable> extends ElasticsearchCrudRepository<T, ID> {
但是 ElasticsearchRepository
似乎需要一个带有 ElasticsearchTemplate-Bean 的 @Configuration
-Class 并且需要 TransportClient。据我所试,没有办法用 High/Low 级别 Java Rest Clients 替换它,不是吗?
所以如果我想使用最新的官方客户端,没有适合我的 JPA?
Spring Data ES 存储库中有一个关于此的未解决问题:https://jira.spring.io/browse/DATAES-407
spring-data-elasticsearch 3.2.0,现在可用,因为 M2 包含使用 RestClient 的代码。
查看我对这个问题的回答: 了解如何设置
Spring Data Moore 已发布包含此功能(2019 年 10 月 8 日)。这是主要说明:
Elasticsearch: High Level REST Client support & non Jackson based entity mapping
如果您需要更多详细信息,您可以查看此 jira 问题:
我不明白高级 REST 客户端(它取代了传输客户端)和 Spring Data Elasticsearch 之间的关系。
有一些教程 (https://www.baeldung.com/spring-data-elasticsearch-tutorial) 展示了如何使用 getSomethingById() 等自动实现的方法进行 JPA 样式的查询。他们使用这个界面:
public interface ElasticsearchRepository<T, ID extends Serializable> extends ElasticsearchCrudRepository<T, ID> {
但是 ElasticsearchRepository
似乎需要一个带有 ElasticsearchTemplate-Bean 的 @Configuration
-Class 并且需要 TransportClient。据我所试,没有办法用 High/Low 级别 Java Rest Clients 替换它,不是吗?
所以如果我想使用最新的官方客户端,没有适合我的 JPA?
Spring Data ES 存储库中有一个关于此的未解决问题:https://jira.spring.io/browse/DATAES-407
spring-data-elasticsearch 3.2.0,现在可用,因为 M2 包含使用 RestClient 的代码。
查看我对这个问题的回答:
Spring Data Moore 已发布包含此功能(2019 年 10 月 8 日)。这是主要说明:
Elasticsearch: High Level REST Client support & non Jackson based entity mapping
如果您需要更多详细信息,您可以查看此 jira 问题: