zoukankan      html  css  js  c++  java
  • Elastic Search Java Api 创建索引结构,添加索引

    创建TCP客户端

    Client client = new TransportClient()
                 .addTransportAddress(new InetSocketTransportAddress(
                         "localhost", 9300));

    创建索引

    client.admin().indices().prepareCreate("pages").execute().actionGet();
    创建索引结构
    XContentBuilder builder=XContentFactory
                .jsonBuilder()
                .startObject()
                    .startObject("sina")
                    .startObject("properties")
                        .startObject("article_title")
                            .field("type", "string")
                            .field("store", "yes")
                            .field("analyzer","ik")
                            .field("index","analyzed")
                        .endObject()
                        .startObject("article_content")
                            .field("type", "string")
                            .field("store", "no")
                            .field("analyzer","ik")
                            .field("index","analyzed")
                        .endObject()
                        .startObject("article_url")
                            .field("type", "string")
                            .field("store", "yes")
                            .field("index","not_analyzed")
                        .endObject()
                    .endObject()
                .endObject()
            .endObject();
    PutMappingRequest mapping = Requests.putMappingRequest("pages").type("sina").source(builder);
    client.admin().indices().putMapping(mapping).actionGet();

    添加索引数据

    IndexResponse response = client.prepareIndex("pages", "sina", null)
            .setSource(jsonBuilder()
                .startObject()
                      .field("article_title", Bytes.toString(r.getValue("article".getBytes(), "title".getBytes())))
                       .field("article_content", Bytes.toString(r.getValue("article".getBytes(), "content".getBytes())))
                        .field("article_url", Bytes.toString(r.getValue("article".getBytes(), "url".getBytes())))
                   .endObject()
                   )
            .execute()
            .actionGet();
                
    client.close();
  • 相关阅读:
    第十二章 基本数据类型
    第十一章 变量名的力量
    第十章 使用变量的一般事项
    第九章 伪代码编程过程
    第八章 防御式编程
    JMeter简介
    第七章 高质量的子程序
    第六章 可以工作的类
    第五章 软件构建中的设计
    第四章 关键的“构建”决策
  • 原文地址:https://www.cnblogs.com/yaomajor/p/7767058.html
Copyright © 2011-2022 走看看