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(关系型 ...
随机推荐
- 在word上写博客直接发到CSDN
目前大部分的博客作者在写博客这件事情上都会遇到以下3个痛点:1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.2.发布到博客或公众号平台 ...
- 通过面试题学习零散知识:Java面试题整理
一.如何看待面试题 对于喜欢学习的开发者来说,我们抛开工作和生活的时间,剩余的时间并不多,如果都用于学习的话,也不可能学的下所有感兴趣的技术点,精力也跟不上,我是深感如是.而面试题一般都是零碎的知识 ...
- centos 学习总结
我用的是6.4 添加中文输入法 .su root .yum install "@Chinese Support" .exit .回到桌面,system->preference ...
- 16、Semantic-UI之模态窗口
16.1 定义模态窗口 示例:定义基础的模态窗口 <!DOCTYPE html> <html lang="en"> <head> <met ...
- 减少C盘空间占用的技巧
1.搜索C盘中大小大于某个值的文件:C:\Windows\SoftwareDistribution这个文件夹下很多大文件 2.搜索*.log文件 3.C:\Users\Guangshan\AppDat ...
- Spring事务管理—aop:pointcut expression 常见切入点表达式及事物说明
例: <aop:config> <aop:pointcut expression="execution(* com.xy.service.*.*(..))" ...
- arcgis android 10.2.5开发环境配置
android里要添加arcgis android 的支持,其实本质是添加了jar包,so库,清单文件里申请了权限而已. 插件是为了方便创建arcgis android工程,然后并没有什么卵用. ar ...
- Java中的多态方法
public class Main { public void test(Object o) { System.out.println("Object"); } public vo ...
- [转载].NET商业软件源码保护
列举工作以来遇到的各种类型的软件所采用的代码保护技术,只讲原理不涉及技术细节实现,以避免产生法律问题.有些朋友说直接把代码放在Github开源下载,开源可以促进技术交流与进步,然而值钱的代码都积压在硬 ...
- Django ajax方法提交表单,及后端接受数据
前台代码: {% block content %} <div class="wrapper wrapper-content"> <div class=" ...