ES 在 7.0 版本开始将废弃 TransportClient,8.0 版本开始将彻底移除 TransportClient,取而代之的是 High Level REST Client,官方文档介绍的很详细。html
Java High Level REST Client 为高级别的Rest客户端,基于低级别的REST客户端,增长了编组请求JSON串,解析响应 JSON 串等相关 API,使用的版本须要和 ES 服务端的版本保持一致,不然会有版本问题。java
除了官方文档以外,还有 JavaDOC 文档 查阅。git
<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 还依赖了github
org.elasticsearch:elasticsearch
,org.elasticsearch.client:elasticsearch-rest-client
所以, POM
文件中指定了和 ES 同版本的相关依赖,避免版本不一致引起的问题。elasticsearch
RestHighLevelClient client = new RestHighLevelClient( RestClient.builder( new HttpHost("192.168.3.43", 9200, "http")));
关闭:maven
client.close();