elasticsearch 添加字段
程序员文章站
2022-05-13 16:25:56
...
Elasticsearch中的mapping一旦创建,就不能再修改。但是添加字段是可以的。其实很简单,只需在原来的mapping上面直接新增加一个field,然后重新创建一下mapping就可以了。
原mapping的定义如下:
private static XContentBuilder getMapping() throws Exception{ XContentBuilder mapping = jsonBuilder() .startObject() .startObject("test") .startObject("properties") .startObject("id") .field("type", "long") .field("store", "yes") .endObject() .startObject("type") .field("type", "string") .field("index", "not_analyzed") .endObject() .startObject("catIds") .field("type", "integer") .endObject() .endObject() .endObject() .endObject(); return mapping; }
现在加入要增加一个field,名称叫title。新增后的代码如下:
private static XContentBuilder getMapping() throws Exception{ XContentBuilder mapping = jsonBuilder() .startObject() .startObject("test") .startObject("properties") .startObject("id") .field("type", "long") .field("store", "yes") .endObject() .startObject("type") .field("type", "string") .field("index", "not_analyzed") .endObject() //新增字段 .startObject("title") .field("type", "string") .field("index", "analyzed") .endObject() .startObject("catIds") .field("type", "integer") .endObject() .endObject() .endObject() .endObject(); return mapping; }
然后重新putMapping即可。
还不知道如何创建mapping?请看这里。
对这类话题感兴趣?欢迎发送邮件至donlianli@126.com
关于我:邯郸人,擅长Java,Javascript,Extjs,oracle sql。
更多我之前的文章,可以访问 我的空间
推荐阅读
-
DevExpress的GridControl的使用以及怎样添加列和绑定数据源
-
MYSQL如何建立两个表共用一个ID字段
-
MySQL创办计算字段MySQL系列(五)
-
数据select count时多个字段确定唯一的问题_MySQL
-
PHP实现文章内容添加内链关键词替换的代码
-
mysql SELECT语句去除某个字段的重复信息_MySQL
-
MySQL添加用户的两种方法
-
elasticsearch-Elasticsearch修改集群名字后索引数据失败
-
pc端,移动端添加弹窗禁止body滚动
-
php curl的CURLOPT_HTTPHEADER可以自定义添加吗?例如'Request-Id' => '1w11'