zoukankan      html  css  js  c++  java
  • 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);

  • 相关阅读:
    idea 搭建spring boot
    面向对象
    idea 转普通项目为maven 项目
    java 基础
    设计模式
    GeneratedKeyHolder的作用:获得新建主键值
    Oracle中Merge into的用法实例讲解
    深入理解Java线程池:ThreadPoolExecutor
    java Timer(定时调用、实现固定时间执行)
    js实现数组去重
  • 原文地址:https://www.cnblogs.com/bigbigzhao/p/15704477.html
Copyright © 2011-2022 走看看