es put mapping
fd dg
public Map<String, Map<String, String>> javaBeanToMapping(Object instance, List<String> textMappingList, Map<String, String> nestedMappingMap) {
Field field;
Map<String, Map<String, String>> fieldMaps = new HashMap<>();
Class information = instance.getClass();
Field[] fields = information.getDeclaredFields();
for (int i = 0; i < fields.length; i++) {
field = fields[i];
Map<String, String> fieldMap = new HashMap<>();
if (CommonFuctions.isNotEmptyList(textMappingList) && textMappingList.contains(field.getName())) {
fieldMap.put("type", "text");
fieldMap.put("analyzer", EsConstant.ES_ANALYSIS_IK);
fieldMap.put("search_analyzer", EsConstant.ES_ANALYSIS_IK_SMART);
fieldMaps.put(field.getName(), fieldMap);
} else if (nestedMappingMap != null && nestedMappingMap.containsKey(field.getName())) {
fieldMap.put("type", "nested");
fieldMap.put(EsConstant.ES_NESTED_PROPERTIES, nestedMappingMap.get(field.getName()));
fieldMaps.put(field.getName(), fieldMap);
} else if ("class java.lang.String".equals(field.getType())) {
fieldMap.put("type", "keyword");
fieldMaps.put(field.getName(), fieldMap);
} else if ("class java.lang.Integer".equals(field.getType().toString())) {
fieldMap.put("type", "integer");
fieldMaps.put(field.getName(), fieldMap);
} else if ("class java.lang.Float".equals(field.getType().toString())) {
fieldMap.put("type", "float");
fieldMaps.put(field.getName(), fieldMap);
} else if ("class java.lang.Double".equals(field.getType().toString())) {
fieldMap.put("type", "double");
fieldMaps.put(field.getName(), fieldMap);
} else if ("class java.util.Date".equals(field.getType().toString())) {
fieldMap.put("type", "date");
fieldMap.put("format", "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd'T'HH:mm:ss||epoch_millis");
fieldMaps.put(field.getName(), fieldMap);
} else if (field.getType().toString().contains("[")) {
fieldMap.put("type", "array");
fieldMaps.put(field.getName(), fieldMap);
} else if ("interface java.util.List".equals(field.getType().toString())) {
fieldMap.put("type", "keyword");
fieldMaps.put(field.getName(), fieldMap);
} else {
fieldMap.put("type", "keyword");
fieldMaps.put(field.getName(), fieldMap);
}
}
return fieldMaps;
}
es put mapping的更多相关文章
- ES创建mapping时字段别名
ES默认是动态创建索引和索引类型的mapping的,但是在学习的时候还能这样用,在生产中一定是手动制定mapping!在生产中经常会遇到这样的需求,想用某个字段进行统计,又想对该字段进行模糊查询,解决 ...
- es的mapping设置
自定义mapping的api PUT test_index { "mappings": { #mappings关键字 "doc": { #type " ...
- ES 创建mapping
mapping的写入与查看首先创建一个索引: curl -XPUT "http://erp2.es.kd1.pagoda.com.cn:80/erp_stock_index"{&q ...
- [Elasticsearch] ES 的Mapping 设计在实际场景中应用
背景 项目中有个需求是需要几个字段作为标签,统计各个标签的文档数量,同时支持分词后的全文检索功能. 原有的mapping设计: curl -XPUT http://ip:9200/meta_es_me ...
- es 修改 mapping 字段类型
一.原索引 PUT my_index { "mappings": { "_doc": { "properties": { "cre ...
- ES mapping映射及优化
mapping映射 主要类型: 同一index下,不同type中如果有相同filed:es进行mapping映射的时候,按照先写进去的指定类型:比如同一index,包含的type中都有key1字段,如 ...
- elasticsearch 之mapping
搭好elk 后,有时候会发现kibana 统计数据时,数据类型不对,这个时候就和elasticsearch的mapping有关,虽然我们可以用logstash修改传入es里的数据类型,比如 float ...
- es搜索引擎
1.es简介 2.es优缺点 3.es使用 4.es可以解决的问题 5.es举例 6.es执行结果截图 7.es数据增量方案 8.使用es搜索 一.es简介 es是一个是一个实时的分布式搜索和分析引擎 ...
- ES 08 - 创建、查看、修改、删除、关闭Elasticsearch的index
目录 1 创建index(配置mapping[映射]) 2 查看index 3 修改index 4 删除index 5 打开/关闭index 6 常见问题及解决方法 index相当于RDBMS(关系型 ...
随机推荐
- [GO]channel实现数据交互
package main import ( "fmt" "time" ) func main() { ch := make(chan string)//创建ch ...
- windows7配置git 免密码登录git服务器
1.在桌面右击“Git Bash Here ” 2.输入:cd ~/.ssh/ 3.输入你的git服务器的用户 git config --global user.name "xx" ...
- intellJ IDE 15 生成 serialVersionUID
这个Inspections的位置不好找,建议搜索Serialization issues 然后勾选两项 serialzable class without "serialVersionUID ...
- Ajax之XMLHttpRequest
XMLHttpRequest对象 XMLHttpRequest 提供客户端同http服务器通讯的协议 一:创建 IE : http_request = new ActiveXObject(" ...
- Re:从零开始的Spring Security Oauth2(一)
前言 今天来聊聊一个接口对接的场景,A厂家有一套HTTP接口需要提供给B厂家使用,由于是外网环境,所以需要有一套安全机制保障,这个时候oauth2就可以作为一个方案. 关于oauth2,其实是一个规范 ...
- Linux--多用户登录服务器端口抓包
以root身份登录1.新建用户组用命令groupadd test2.添加用户useradd -d /home/test/bei_1 -s /bin/sh -g test -m bei_1此命令新建了一 ...
- iOS检测项目图片资源是否包含P3图片
1.问题描述 我们需要知道的是在iOS9.3以下系统上,.ipa包内如果含有p3图片,将会导致严重的闪退问题,具体原因还请google,非本文的重点. 2.问题解决 拿到的如果是ipa包(不是则跳过) ...
- 深入了解java虚拟机(JVM) 第一章 内存区域分布情况
前言: 本文主要是我自己总结的一些技巧,可能对搜到这篇的来观看的朋友有些很难理解,请见谅. 一.JVM的运行时数据区 总共有两个区域: 1.线程共享区:方法区,java堆 2.线程独占区:虚拟机栈,本 ...
- ie7 a标签强制不换行兼容问题
a内容错乱如图所示: 解决方法:加个样式就行white-space:nowrap; 最终效果图: 添加了white-space:nowrap 之后, 这样就强制一段文字不会自动换行了.
- 4.iptables 网络防火墙
[1] #如果想要iptables作为网络防火墙,iptables所在主机开启核心转发功能,以便能够转发报文. [2] #使用如下命令查看当前主机是否已经开启了核心转发,0表示为开启,1表示已开启 c ...