原生JAVA操作 Elasticsearch文档

2021/11/30 17:06:16

本文主要是介绍原生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文档的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程