ES7 JavaApi 使用ik分詞器


//  一 、新建索引時設置索引全部默認分詞器為ik

CreateIndexRequest request = new CreateIndexRequest("索引名");
request.settings(Settings.builder().put("index.number_of_shards", 3) // 分片數
.put("index.number_of_replicas", 2) // 副本數
.put("analysis.analyzer.default.tokenizer", "ik_max_word") // 設置默認分詞器
);

// 客戶端執行請求,請求后獲得響應
CreateIndexResponse response = esUtils.client().indices().create(request, RequestOptions.DEFAULT);
System.out.println(response);

 

// 二、設置某個字段使用ik分詞器

CreateIndexRequest request = new CreateIndexRequest("索引名");

XContentBuilder builder = XContentFactory.jsonBuilder();

builder.startObject().startObject("properties")
.startObject("name").field("type","text").field("analyzer","ik_max_word").endObject()
.startObject("phone").field("type","text").field("analyzer","ik_max_word").endObject()
.startObject("test").field("type","text").field("analyzer","ik_max_word").endObject()
.startObject("address").field("type","text").field("analyzer","ik_max_word").endObject()
.endObject()
.endObject();
request.mapping(builder);

//2客戶端執行請求,請求后獲得響應
CreateIndexResponse response = esUtils.client().indices().create(request, RequestOptions.DEFAULT);
System.out.println(response);


免責聲明!

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



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