elasticsearch筆記(3) java操作es的index


一: 准備es插件和elasticsearch-rest-high-level-client插件

 

 二.

   2.1創建索引連接

 1 @Test
 2     public void esTest() throws IOException {
 3     //        PUT /books
 4 //        {
 5 //            "settings": {
 6 //            "number_of_replicas": 1,
 7 //                    "number_of_shards": 5
 8 //        },
 9 //            "mappings": {
10 //            "noval": {
11 //                "properties": {
12 //                    "name": {
13 //                        "type": "text",
14 //                                "analyzer": "ik_max_word",
15 //                                "index": true,
16 //                                "store": false
17 //                    },
18 //                    "author":{
19 //                        "type": "keyword"
20 //                    },
21     
22        String hostname = "192.168.43.30";
23        Integer prot = 9200;
24 
25         // 設置索引  類型
26         String index = "person";
27         String type = "man";
28 
29 
30         //設置索引的信息:分片 備份
31         Settings.Builder settings = Settings.builder()
32                 .put("number_of_shards", 5)
33                 .put("number_of_replicas", 1);
34         //構建mapping
35         XContentBuilder mapping = JsonXContent.contentBuilder()
36                 .startObject()
37                   .startObject("properties")
38                     .startObject("name")
39                       .field("type","text")
40                     .endObject()
41                     .startObject("age")
42                       .field("type","integer")
43                     .endObject()
44                   .endObject()
45                 .endObject();
46 
47 //        構建索引
48         CreateIndexRequest createIndexRequest = new CreateIndexRequest(index)
49                 .settings(settings) //分盤和備份
50                 .mapping(type,mapping);
51 
52 
53        //鏈接es
54         HttpHost httpHost = new HttpHost(hostname,prot);
55         RestClientBuilder restClientBuilder = RestClient.builder(httpHost);
56         RestHighLevelClient restHighLevelClient = new RestHighLevelClient(restClientBuilder);
57         
58         //創建索引連接
59         CreateIndexResponse createIndexResponse = restHighLevelClient.indices() 60                 .create(createIndexRequest, RequestOptions.DEFAULT);
61       
62 
63     }

2.2 檢查索引是否存在

 1     public void findIndex() throws IOException {
 2      //  獲取連接restHighLevelClient
 3         HttpHost httpHost = new HttpHost(HOST,PORT);
 4         RestClientBuilder restClientBuilder = RestClient.builder(httpHost);
 5         RestHighLevelClient restHighLevelClient = new RestHighLevelClient(restClientBuilder);
 6 
 7         GetIndexRequest getIndexRequest = new GetIndexRequest();
 8         getIndexRequest.indices("person");
 9 
10         boolean exists = restHighLevelClient.indices() 11                   .exists(getIndexRequest, RequestOptions.DEFAULT);
12         System.out.println(exists);
13 
14     }

2.3 刪除索引

 1  public void deletIndex() throws IOException {
 2         //  獲取連接restHighLevelClient
 3         HttpHost httpHost = new HttpHost(HOST,PORT);
 4         RestClientBuilder restClientBuilder = RestClient.builder(httpHost);
 5         RestHighLevelClient restHighLevelClient = new RestHighLevelClient(restClientBuilder);
 6 
 7         DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest();
 8         deleteIndexRequest.indices("person");
 9 
10         AcknowledgedResponse delete = restHighLevelClient.indices() 11                 .delete(deleteIndexRequest, RequestOptions.DEFAULT);
12         System.out.println(delete.isAcknowledged());
13 
14     }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM