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. java非ブロッキングHTTPクライアント
- 2. JavaでのHTTPクライアント接続
- 3. Java対ネットHTTPクライアントのパフォーマンス
- 4. Java Async Httpクライアントの比較
- 5. AWS Managed ElasticSearchのElastic Transportクライアント
- 6. クロールのためのヘッドレスJava HTTPクライアント?
- 7. Androidのwebviewとjava httpクライアント間のHTTPセッション同期
- 8. Javaクライアントを使用してElasticSearchをクエリする方法は?
- 9. マルチスレッドアプリケーションのHTTPクライアント
- 10. elasticsearch javaバルクバッチサイズ
- 11. HTTPクライアントのポストメソッド
- 12. httpクライアントのテスト
- 13. Elasticsearch java api or filter
- 14. HTTPキットWebSocketクライアント
- 15. elastic Javaクライアントを使用してaws elasticsearchサービスと対話するには?
- 16. 対処方法Javaクライアントからのサーバー側HTTPファイルのアップロード
- 17. SiteMinderとHTTPクライアント - ユーザログイン情報
- 18. 認証HTTP .NETクライアント
- 19. ブーストASIO HTTPクライアントPOST
- 20. win32上のHTTPクライアントの例
- 21. Android HTTPクライアントの問題
- 22. HTTPクライアント - Ionic2/Angular2のApp
- 23. POST経由でファイルをアップロードするJava Httpクライアント
- 24. httpクライアントでjavaでクエリパラメータを渡す方法
- 25. restitutionの複数の機能がelasticsearchクライアントに機能する
- 26. Elasticsearch UI
- 27. クライアントHTTP処理とETag
- 28. .NETのelasticsearch?
- 29. HTTPリクエストのJava
- 30. Elasticsearch Java API - max_expansionによるファジー検索
私は同じ問題を抱えています。ポート80を介してESサーバに接続できる必要があります。 Jestはうまく見えますが、残念なことにJestサンプルアプリケーションはJestの中核ライブラリの背後にあります。 – Phy6