zoukankan      html  css  js  c++  java
  • elasticsearch RestHighLevelClient 关于index的常用操作

    对于索引的操作是基于***IndexRequest来进行操作的。例如:CreateIndexRequest、DeleteIndexRequest、GetIndexRequest

    常见操作中还有校验索引是否存在:exists


    创建连接请求:

      

        private RestHighLevelClient client;
    
        //创建连接
        public ElasticsearchController() {
            RestHighLevelClient restHighLevelClient = new RestHighLevelClient(
                    RestClient.builder(
                            new HttpHost("localhost" , 9200 , "http")
                    )
            );
    
            this.client = restHighLevelClient;
        }

    创建索引:

        public String createIndex(){
    
            //create es index
            CreateIndexRequest requestUser = new CreateIndexRequest("usertestinfo");
            CreateIndexResponse createIndexResponse = null;
            try {
                createIndexResponse = this.client.indices().create(requestUser, RequestOptions.DEFAULT);
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            //get es index create result is true or false
            boolean acknowledged = false;
            try {
                acknowledged = createIndexResponse.isAcknowledged();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return "Localhost Elasticsearch Create Index is1 : " + acknowledged;
        }

    查找索引:

        public String findIndex(){
    
            GetIndexRequest request = new GetIndexRequest("user");
            HashMap<String, Object> result = new HashMap<>();
            try {
                GetIndexResponse getIndexResponse = this.client.indices().get(request, RequestOptions.DEFAULT);
                Map<String, Settings> settings = getIndexResponse.getSettings();
    
                System.out.println("index settings is :" + settings.toString());
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            return "find es index complete";
        }

    删除索引:

        public String deleteIndex(){
            try {
                DeleteIndexRequest usertestinfo = new DeleteIndexRequest("user");
                AcknowledgedResponse delete = this.client.indices().delete(usertestinfo, RequestOptions.DEFAULT);
                System.out.println("delete index result is : " + delete.isAcknowledged());
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            return "delete es index complete";
        }

    检验索引是否存在:

        //检验某条索引是否存在
        public String checkIndexIsExists(){
    
            GetIndexRequest request = new GetIndexRequest("user");
            boolean exists = false;
            try {
                exists = this.client.indices().exists(request , RequestOptions.DEFAULT);
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            return "exists es index complete , result is :" + exists;
        }
  • 相关阅读:
    TextView 字数限制
    关于一个软件ipa包的其他图片资源
    查看一个软件ipa包的内容
    不断学习的博客
    高级iOS面试题
    CocoaPod出现-bash: pod: command not found 解决办法
    链表清空
    蛋疼的并查集
    再卖菜
    乒乓球男双输了
  • 原文地址:https://www.cnblogs.com/hxjz/p/14701684.html
Copyright © 2011-2022 走看看