ES7学习日记——Java REST Client 索引管理:设置mapping、删除索引

一、设置mapping

  1. 创建设置mapping请求
  2. 设置mapping内容
  3. 执行请求
  4. 检查执行是否成功

  第一步:

PutMappingRequest request=new PutMappingRequest("blog");

  第二步:(这里使用字符串提供mapping,也可以使用HashMap等其他方式)

        request.source("{\r\n" + 
                "    \"properties\":{\r\n" + 
                "        \"title\":{\r\n" + 
                "            \"type\":\"text\",\r\n" + 
                "            \"analyzer\":\"ik_smart\"\r\n" + 
                "        },\r\n" + 
                "        \"content\":{\r\n" + 
                "            \"type\":\"text\",\r\n" + 
                "            \"analyzer\":\"ik_smart\"\r\n" + 
                "        },\r\n" + 
                "        \"date\":{\r\n" + 
                "            \"type\":\"text\"\r\n" + 
                "        }\r\n" + 
                "    }\r\n" + 
                "}", XContentType.JSON);

  第三步:

        RestHighLevelClient client=new RestHighLevelClient(RestClient.builder(new HttpHost("localhost",9200,"http")));//创建client客户端
        AcknowledgedResponse putMappingResponse = client.indices().putMapping(request, RequestOptions.DEFAULT);//执行请求

  第四步:

        boolean acknowledged = putMappingResponse.isAcknowledged();
        if(acknowledged) {
            System.out.println("mapping设置成功!");
        }

二、删除索引

  1. 创建删除索引请求
  2. 执行请求
  3. 检查是否删除成功

  第一步:

DeleteIndexRequest request=new DeleteIndexRequest("blog");

  第二步:

RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(new HttpHost("localhost",9200,"http")));//创建client客户端
AcknowledgedResponse deleteIndexResponse
= client.indices().delete(request, RequestOptions.DEFAULT);//执行请求

  第三步:

boolean acknowledged = deleteIndexResponse.isAcknowledged(); 
if(acknowledged) {
            System.out.println("删除成功!");
        }

  如果没找到index或发生错误,ES会抛出异常。

  

posted @ 2019-12-17 16:11  Molihuacha  阅读(2862)  评论(0)    收藏  举报