Java High Level REST Client 使用示例
概述
ES 在 7.0 版本开始将废弃 TransportClient,8.0 版本开始将完全移除 TransportClient,取而代之的是 High Level REST Client,官方文档介绍的很详细。
Java High Level REST Client 为高级别的Rest客户端,基于低级别的REST客户端,增加了编组请求JSON串,解析响应 JSON 串等相关 API,使用的版本需要和 ES 服务端的版本保持一致,否则会有版本问题。
除了官方文档之外,还有 [JavaDOC 文档](Javadocedit
The javadoc for the REST high level client can be found at https://artifacts.elastic.co/javadoc/org/elasticsearch/client/elasticsearch-rest-high-level-client/7.0.1/index.html) 查阅。
Maven 依赖
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.0.1</version>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>7.0.1</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.0.1</version>
</dependency>
注意,使用 Java High Level REST Client 最低版本也需要 Java 1.8 版本。此外,The High Level Java REST Clien 还依赖了
org.elasticsearch:elasticsearch
,org.elasticsearch.client:elasticsearch-rest-client
因此, POM
文件中指定了和 ES 同版本的相关依赖,避免版本不一致引发的问题。
初始化
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("192.168.3.43", 9200, "http")));
关闭:
client.close();