ES-7.16-Java-API-Client-新特性RestClientBuilder连接ES集群
目录
ES 7.16 Java API Client 新特性(RestClientBuilder连接ES集群)
截至7.15前版本的Java api官网已废弃。
1、添加依赖
<dependency>
<groupId>co.elastic.clients</groupId>
<artifactId>elasticsearch-java</artifactId>
<version>7.16.2</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.3</version>
</dependency>
2、连接集群
String nodes = "192.168.1.96:9200,192.168.1.97:9200,192.168.1.98:9200";
HttpHost[] httpHosts = Arrays.stream(nodes.split(",")).map(x -> {
String[] hostInfo = x.split(":");
return new HttpHost(hostInfo[0], Integer.parseInt(hostInfo[1]));
}).toArray(HttpHost[]::new);
RestClientBuilder builder = RestClient.builder(httpHosts)
RestClient restClient = builder.build();
ElasticsearchTransport transport = new RestClientTransport(
restClient, new JacksonJsonpMapper());
ElasticsearchClient client = new ElasticsearchClient(transport);