• Elasticsearch之更新


    public class UpdateElasticAPI {
        private static RestClient restClient;
    
        static {
            restClient=RestClient.builder(new HttpHost("localhost",9200,"http")).build();
        }
    
        /**
         * 1.创建文档
         * @throws Exception
         */
        @Test
        public void CreateDocument()throws Exception{
    
            String method = "PUT";
            String endpoint = "/update_index/test/1";
            HttpEntity entity = new NStringEntity(
                    "{
    " +
                            "    "counter" : 1,
    " +
                            "    "tags" : ["red"]
    " +
                            "}", ContentType.APPLICATION_JSON);
    
            Response response = restClient.performRequest(method,endpoint, Collections.<String, String>emptyMap(),entity);
            System.out.println(EntityUtils.toString(response.getEntity()));
        }
    
        /**
         *2. 获取文档
         * @throws Exception
         */
        @Test
        public void getDocument()throws Exception{
            String method = "GET";
            String endpoint = "/update_index/test/1";
            Response response = restClient.performRequest(method,endpoint);
            System.out.println(EntityUtils.toString(response.getEntity()));
        }
    
        /**
         * 3.更新文档,给counter字段加4
         * @throws Exception
         */
        @Test
        public void UpdateDocument()throws Exception{
    
            String method = "POST";
            String endpoint = "/update_index/test/1/_update";
            HttpEntity entity = new NStringEntity(
                    "{
    " +
                            "    "script" : {
    " +
                            "        "source": "ctx._source.counter += params.count",
    " +
                            "        "lang": "painless",
    " +
                            "        "params" : {
    " +
                            "            "count" : 4
    " +
                            "        }
    " +
                            "    }
    " +
                            "}", ContentType.APPLICATION_JSON);
    
            Response response = restClient.performRequest(method,endpoint, Collections.<String, String>emptyMap(),entity);
            System.out.println(EntityUtils.toString(response.getEntity()));
        }
    
        /**
         * 4.部分文档更新增加字段(不存在name字段),存在则覆盖
         * @throws Exception
         */
        @Test
        public void SomeUpdateDocument()throws Exception{
    
            String method = "POST";
            String endpoint = "/update_index/test/1/_update";
            HttpEntity entity = new NStringEntity(
                    "{
    " +
                            "    "doc" : {
    " +
                            "        "user" : "kimchy"
    " +
                            "    }
    " +
                            "}", ContentType.APPLICATION_JSON);
    
            Response response = restClient.performRequest(method,endpoint, Collections.<String, String>emptyMap(),entity);
            System.out.println(EntityUtils.toString(response.getEntity()));
        }
    
        /**
         * 5.按查询API更新
         */
    
    
    }
  • 相关阅读:
    ueditor
    六月随笔
    ueditor基本配置
    does not support the Select property
    A simple paging control pagesize control just support url querystring
    为什么LoadPostData 执行不了, why the LoadPostData method was not be implement
    How to make a test environment for Mobile site develope
    外部组件异常
    CommunityServer Telligent.Registration.DLL 3.1.20913.0已破 cracked
    Radgrid 与 文件下载
  • 原文地址:https://www.cnblogs.com/heqiyoujing/p/11148283.html
Copyright © 2020-2023  润新知