新增指定索引的文档数据的代码如下:
package com.atgulgu.es.test;import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.http.HttpHost;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.client.Request;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.client.indices.GetIndexRequest;
import org.elasticsearch.client.indices.GetIndexResponse;
import org.elasticsearch.xcontent.XContentType;/*** ClassName: ESTest_Client* Package: com.atgulgu.es.test** @Author 杨小燕* @Create 2024/10/7 0007 23:37* @Version 1.0*/
public class ESTest_Doc_Insert {public static void main(String[] args) throws Exception {//创建ES客户单RestHighLevelClient esClient = new RestHighLevelClient(RestClient.builder(new HttpHost("192.168.1.108",9200,"http")));//插入数据IndexRequest request = new IndexRequest();request.index("user").id("1001");User user = new User();user.setName("zhangsan");user.setAge(30);user.setSex("男");//向ES插入数据,必须将数据转换为JSOn格式ObjectMapper mapper = new ObjectMapper();String userjson = mapper.writeValueAsString(user);request.source(userjson, XContentType.JSON);IndexResponse response = esClient.index(request, RequestOptions.DEFAULT);System.out.println(response.getResult());//关闭ES客户端esClient.close();}
}
执行成功会提示created
修改数据的代码如下:
package com.atgulgu.es.test;import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.http.HttpHost;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.action.update.UpdateRequest;
import org.elasticsearch.action.update.UpdateResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.xcontent.XContentType;/*** ClassName: ESTest_Client* Package: com.atgulgu.es.test** @Author 杨小燕* @Create 2024/10/7 0007 23:37* @Version 1.0*/
public class ESTest_Doc_update {public static void main(String[] args) throws Exception {//创建ES客户单RestHighLevelClient esClient = new RestHighLevelClient(RestClient.builder(new HttpHost("192.168.1.108",9200,"http")));//修改数据UpdateRequest request = new UpdateRequest();request.index("user").id("1001");request.doc(XContentType.JSON,"sex","女");UpdateResponse response = esClient.update(request, RequestOptions.DEFAULT);System.out.println(response.getResult());//关闭ES客户端esClient.close();}
}
查询ES中具体索引和ID的数据代码如下:
package com.atgulgu.es.test;import org.apache.http.HttpHost;
import org.elasticsearch.action.get.GetRequest;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.action.update.UpdateRequest;
import org.elasticsearch.action.update.UpdateResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.xcontent.XContentType;/*** ClassName: ESTest_Client* Package: com.atgulgu.es.test** @Author 杨小燕* @Create 2024/10/7 0007 23:37* @Version 1.0*/
public class ESTest_Doc_Get {public static void main(String[] args) throws Exception {//创建ES客户单RestHighLevelClient esClient = new RestHighLevelClient(RestClient.builder(new HttpHost("192.168.1.108",9200,"http")));//查询数据GetRequest request = new GetRequest();request.index("user").id("1001");GetResponse response = esClient.get(request, RequestOptions.DEFAULT);System.out.println(response.getSourceAsString());//关闭ES客户端esClient.close();}
}
执行结果如下:
删除指定文档的代码如下
package com.atgulgu.es.test;import org.apache.http.HttpHost;
import org.elasticsearch.action.delete.DeleteRequest;
import org.elasticsearch.action.delete.DeleteResponse;
import org.elasticsearch.action.get.GetRequest;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;/*** ClassName: ESTest_Client* Package: com.atgulgu.es.test** @Author 杨小燕* @Create 2024/10/7 0007 23:37* @Version 1.0*/
public class ESTest_Doc_Delete {public static void main(String[] args) throws Exception {//创建ES客户单RestHighLevelClient esClient = new RestHighLevelClient(RestClient.builder(new HttpHost("192.168.1.108",9200,"http")));//删除文档数据DeleteRequest request = new DeleteRequest();request.index("user").id("1001");DeleteResponse response = esClient.delete(request, RequestOptions.DEFAULT);System.out.println(response.toString());//关闭ES客户端esClient.close();}
}
执行显示结果如下