1、maven
<!-- Java Low Level REST Client -->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>6.4.0</version>
</dependency>
2、创建ResfClientUtil
package com.yj.framework.es.util;
import org.apache.http.entity.ContentType;
import org.apache.http.nio.entity.NStringEntity;
import org.apache.http.util.EntityUtils;
import org.elasticsearch.client.Request;
import org.elasticsearch.client.Response;
import org.elasticsearch.client.ResponseListener;
import org.elasticsearch.client.RestClient;
import org.json.JSONObject;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import java.io.IOException;
public class ResfClientUtil {
/**
* 增加、删除、id查询
* @param method "POST" or "GET" or "DELETE" .....
* @param indexType "/book/book/" or "book/book/"
* @param id
* @param object
* @return
*/
public static ResponseEntity<String> client(RestClient client,String method,String indexType,String id,Object object){
// 构造HTTP请求,第一个参数是请求方法,第二个参数是服务器的端点,
// endpoint直接指定为index/type的形式
Request request = new Request(method, new StringBuilder(indexType).append(id).toString());
return clientRequest(client,request,object);
}
public static ResponseEntity<String> client(RestClient client,String method,String indexType,Object object){
// 构造HTTP请求,第一个参数是请求方法,第二个参数是服务器的端点,
// endpoint直接指定为index/type的形式
Request request = new Request(method, new StringBuilder(indexType).toString());
return clientRequest(client,request,object);
}
public static ResponseEntity<String> client(RestClient client,String method,String indexType,String id,String str){
// 构造HTTP请求,第一个参数是请求方法,第二个参数是服务器的端点,
// endpoint直接指定为index/type的形式
Request request = new Request(method, new StringBuilder(indexType).append(id).toString());
return clientRequest(client,request,str);
}
public static ResponseEntity<String> client(RestClient client,String method,String indexType,String str){
// 构造HTTP请求,第一个参数是请求方法,第二个参数是服务器的端点,
// endpoint直接指定为index/type的形式
Request request = new Request(method, new StringBuilder(indexType).toString());
return clientRequest(client,request,str);
}
/**
* 并行异步执行HTTP请求
*/
public static void clientAsyn(RestClient client,String method,String indexType,String id,Object object,ResfTask resfTask) {
Request request = new