JavaからElasticSearchに接続しようとしていますが、HTTP経由でしか接続できません。 TransportClient
は使用できません。 ElasticSearch REST APIのJavaクライアントラッパーはありますか?もしそうなら、私はそれをどうやって使うのですか?ElasticSearchのJava HTTPクライアント
答えて
こんにちは、あなたのニーズに合った新しいプロジェクトがあります。それはElasticsearchのJavaベースのRest API
それをチェックしてください!その名前JEST
新しい「公式の」RESTベースのJavaクライアントwill be availableは、v5.0.0-alpha4で始まります。
あなたが書いたことは、2012年に完全に有効だったと思いますが、いくつかのオープンソースの実装が現在あります。 –
@BastianVoigtこれを私の注意を引くことに感謝します。私は最新の状況を反映するために私の答えを更新しました。 – imotov
更新のための –
Elastic Search用のJava HTTP/RESTクライアントFlummiをソースとしてオープンしました。これは、トランスポートクライアントのAPIを可能な限り模倣して、既存のコードを移植することを容易にします。また、Jestよりも優れた抽象度を提供します。これは、Exceptionsですべてのエラーを報告するためです。試してみる!
簡単な使用例:彼らはJava REST Clientを提供ElasticsearchのJava SDKの
Flummi flummi = new Flummi("http://elasticsearch.base.url:9200");
SearchResponse searchResponse = flummi
.prepareSearch("products")
.setQuery(
QueryBuilders.termQuery("color", "yellow").build()
)
.execute();
System.out.println("Found "
+ searchResponse.getHits().getTotalHits()
+ " products");
searchResponse.getHits()
.stream().map(hit -> hit.getSource().get("name").getAsString())
.forEach(name -> System.out.println("Name: " + name));
RestClient restClient = RestClient.builder(
new HttpHost("localhost", 9200, "http"),
new HttpHost("localhost", 9201, "http")).build();
// for the RestHighLevelClient
RestHighLevelClient client =
new RestHighLevelClient(restClient);
- 1. ElasticSearch test httpクライアント
- 2. ElasticSearch HTTPクライアントとトランスポートクライアント
- 3. ElasticSearch JESTクライアントJava
- 4. Elasticsearch輸送クライアントJavaクライアント
- 5. ElasticSearch Java API:クライアントの作成
- 6. AWS ElasticSearch 2.3 Java HTTPバルクAPI
- 7. java非ブロッキングHTTPクライアント
- 8. JavaでのHTTPクライアント接続
- 9. Apache HTTPクライアントのクッキー - Java
- 10. Java Async Httpクライアントの比較
- 11. Java対ネットHTTPクライアントのパフォーマンス
- 12. SpringバッチでElasticsearch java configクライアントを使用
- 13. java apiクライアントによるelasticsearch認証
- 14. C#クライアントJavaサーバーHTTPレスポンス
- 15. java httpクライアント用のMockクラスの作成
- 16. クロールのためのヘッドレスJava HTTPクライアント?
- 17. Elasticsearch PHPクライアント - Bad
- 18. AWS ElasticSearchクライアントSDK
- 19. UNIXクライアントのhttpクライアント
- 20. Androidのwebviewとjava httpクライアント間のHTTPセッション同期
- 21. マルチスレッドアプリケーションのHTTPクライアント
- 22. Elasticsearch Transportクライアント接続
- 23. HTTPクライアントのポストメソッド
- 24. Akka HTTPクライアントakka-http akka-http-jackson
- 25. AWS Managed ElasticSearchのElastic Transportクライアント
- 26. ElasticSearchクライアントとベースJVMのバージョン
- 27. PHPクライアントのelasticsearch boolクエリエラー
- 28. httpクライアントのテスト
- 29. DoFnのHTTPクライアント
- 30. Javaクライアントを使用してElasticSearchをクエリする方法は?
私は同じ問題を抱えています。ポート80を介してESサーバに接続できる必要があります。 Jestはうまく見えますが、残念なことにJestサンプルアプリケーションはJestの中核ライブラリの背後にあります。 – Phy6