本文主要是介绍原生JAVA操作 Elasticsearch文档,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
package com.yqq.app13;
import org.apache.http.HttpHost;
import org.elasticsearch.action.delete.DeleteRequest;
import org.elasticsearch.action.get.GetRequest;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.common.xcontent.XContentFactory;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
/**
* @Author yqq
* @Date 2021/11/30 16:26
* @Version 1.0
*/
public class DocumentTest {
RestHighLevelClient client;
@Before
public void init(){
// 创建客户端对象,链接ES
client = new RestHighLevelClient(
RestClient.builder(new HttpHost("node0",9200,"http")));
}
//新增/修改文档
@Test
public void addOrUpdateDocument(){
//创建请求对象
IndexRequest request = new IndexRequest("student").id("2");
try {
request.source(XContentFactory.jsonBuilder()
.startObject()
.field("id",2)
.field("name","乔丹")
.field("info","NBA公牛队最伟大篮球巨星")
.endObject());
} catch (IOException e) {
e.printStackTrace();
}
//发送请求
try {
IndexResponse response = client.index(request, RequestOptions.DEFAULT);
} catch (IOException e) {
e.printStackTrace();
}
}
// 根据id查询文档
@Test
public void findById() throws Exception{
//创建请求对象
GetRequest request = new GetRequest("student","2");
//发送请求
GetResponse response = client.get(request,RequestOptions.DEFAULT);
//输出查询结果
System.out.println(response.getSourceAsString());
}
// 删除文档
@Test
public void deleteDocument() throws Exception{
//创建请求对象
DeleteRequest request = new DeleteRequest("student","2");
//发送请求
client.delete(request,RequestOptions.DEFAULT);
}
@After
public void close(){
try {
client.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
这篇关于原生JAVA操作 Elasticsearch文档的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!