[英]ElasticSearch - Delete an Index using Java HighLevel HTTP Client
[英]Java HTTP Client for ElasticSearch
我正在嘗試從 Java 連接到 ElasticSearch,但我只能通過 HTTP 連接。 我不能使用TransportClient
。 ElasticSearch REST API 是否有 Java 客戶端包裝器? 如果是這樣,我該如何使用它?
嗨,有一個全新的項目正好符合您的需求。 用於 Elasticsearch 的基於 Java 的 Rest API
一探究竟! 它的名字JEST
從 v5.0.0-alpha4 開始,將提供一個新的“官方”基於 REST 的 Java 客戶端。
我們剛剛開源了Flummi ,這是一個用於 Elastic Search 的 Java HTTP/REST 客戶端。 它盡可能地模仿傳輸客戶端的 API,使得移植現有代碼變得容易。 它還提供了比 Jest 更好的抽象級別,因為它報告所有帶有異常的錯誤。 試試看!
簡單使用示例:
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));
從Elasticsearch Java SDK 的5.6 版開始,它們提供了Java REST Client 。
RestClient restClient = RestClient.builder(
new HttpHost("localhost", 9200, "http"),
new HttpHost("localhost", 9201, "http")).build();
// for the RestHighLevelClient
RestHighLevelClient client =
new RestHighLevelClient(restClient);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.