| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
y37f
10年前发布

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();