1、创建连接。
2,接口。
/** * 创建索引 * @param client 连接客户端 * @param indexName 索引名称 */ public void createStudentIndex(TransportClient client, String indexName);
3.实现接口。
@Override public void createStudentIndex(TransportClient client, String indexName) { CreateIndexRequestBuilder cib = client.admin().indices().prepareCreate(indexName); XContentBuilder mapping = null; try { mapping = XContentFactory.jsonBuilder() .startObject()//表示开始设置值 .startObject("properties")//设置只定义字段,不传参 .startObject("no") //定义字段名 .field("type", "text") //设置数据类型 .endObject() .startObject("name") .field("type", "text") .endObject() .startObject("addreess") .field("type", "text") .endObject() .startObject("age") .field("type", "integer") .endObject() .startObject("phone") .field("type", "text") .endObject() .startObject("score") .field("type", "integer") .endObject() .endObject() .endObject(); } catch (IOException e) { e.printStackTrace(); } cib.addMapping("student", mapping); cib.execute().actionGet(); }
注:在6.0版本后不能用String,只能用text类型,否则会报错。
4.测试类。
IndexService indexService = new IndexServiceImpl(); indexService.createStudentIndex(ConEsUtil.creatConEs(),"school1");