web-dev-qa-db-ja.com

RestHighLevelClientを使用したElasticsearch Spring Data

高レベルREST CLient(トランスポートクライアントに代わる))とSpring Data Elasticsearchの関係がわかりません。

GetSomethingById()などの自動実装されたメソッドを使用してJPAスタイルのクエリを作成する方法を示すチュートリアル( https://www.baeldung.com/spring-data-elasticsearch-tutorial )があります。彼らはこのインターフェースを利用します:

public interface ElasticsearchRepository<T, ID extends Serializable> extends ElasticsearchCrudRepository<T, ID> {

しかし、ElasticsearchRepositoryには@Configuration- ElasticsearchTemplate-Beanを含むクラスで、これにはTransportClientが必要です。私が試した限りでは、それを高/低レベルに置き換える方法はありませんJava Rest Clients、no?

それで、最新の公式クライアントを使用したい場合、JPAの良さはありませんか?

8
Phil

これに関する未解決の問題がSpring Data ESリポジトリにあります: https://jira.spring.io/browse/DATAES-407

5
Val

spring-data-elasticsearch 3.2.0(M2にRestClientを使用するコードが含まれているため)が利用可能になりました。

この質問への私の回答を参照してください: 設定方法については、Spring-Data-Elasticsearchが内部で使用するElasticsearchクライアントは何ですか?

1
P.J.Meisch

Spring Data Mooreがこの機能を含めてリリースされました(2019年10月8日)。これが主な説明です。

Elasticsearch: High Level REST Client support & non Jackson based entity mapping

詳細が必要な場合は、このjiraの問題を確認できます。

https://jira.spring.io/browse/DATAES-407 詳細