ElasticSearch-Java High Level REST Client学习

Java High Level REST Client 官方文档

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.2/java-rest-high.html

Javadoc

https://artifacts.elastic.co/javadoc/org/elasticsearch/client/elasticsearch-rest-high-level-client/7.2.1/index.html.

Maven依赖

<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>elasticsearch-rest-high-level-client</artifactId>
    <version>7.2.1</version>
</dependency>
创建客户端
RestHighLevelClient client = new RestHighLevelClient(RestClient.builder(
                new HttpHost("IP地址", 9200, "http"),
                new HttpHost("IP地址", 9200, "http"),
                new HttpHost("IP地址", 9200, "http")));

 关闭客户端 

client.close();

创建索引

        CreateIndexRequest request = new CreateIndexRequest(indexName);
        //设置索引,例如分片数,副本数,分词器...
        request.settings(Settings.builder().put("index.number_of_shards", shards).put("index.number_of_replicas", replicas)
                .put("analysis.analyzer.default.tokenizer", ik_type)
        );
        //建立映射,设置字段,指定字段类型等,需要json字符串形式
        /*request.mapping(
                "{\n" +
                        "  \"properties\": {\n" +
                        "    \"message\": {\n" +
                        "      \"type\": \"text\"\n" +
                        "    }\n" +
                        "  }\n" +
                        "}",
                XContentType.JSON);*/
        //同步方式发送请求
        CreateIndexResponse createIndexResponse = restClient.indices().create(request, RequestOptions.DEFAULT);
        //处理响应
        boolean acknowledged = createIndexResponse.isAcknowledged();
        boolean shardsAcknowledged = createIndexResponse.isShardsAcknowledged();
        System.out.println("acknowledged = " + acknowledged);
        System.out.println("shardsAcknowledged = " + shardsAcknowledged);

 

 
posted @ 2019-09-25 17:01  wait_me  阅读(257)  评论(0)    收藏  举报