java处理获取到的Elasticsearch数据
Posted corolcorona
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java处理获取到的Elasticsearch数据相关的知识,希望对你有一定的参考价值。
通过Elasticsearch-java的API获取到的数据格式为json格式,如下所示
如果获取sum,avg值等格式会有所变化
JSONObject obj = JSON.parseObject(esResult.getString()); // 图一 List<Map<String ,Object>> list = new ArrayList<Map<String ,Object>>(); try { List<Map> hits = (List<Map>) PropertyUtils.getNestedProperty(obj, "hits.hits"); if(hits != null){ for(Map json : hits){ Map<String ,Object> span = new HashMap<String ,Object>(); Map _sc = (Map) json.get("_source"); span.put("T_deviceIp", _sc.get("T_deviceIp")); span.put("cpuPercent", _sc.get("cpuPercent")); list.add(span); } } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } //图2 JSONObject obj = JSON.parseObject(esResult.getString()); List<Map<String ,Object>> list = new ArrayList<Map<String ,Object>>(); try { List<Map> buckets = (List<Map>)PropertyUtils.getNestedProperty(obj, "aggregations.ip.buckets"); for(Map json : buckets){ Map<String ,Object> span = new HashMap<String ,Object>(); span.put("ip", json.get("key")); }
以上是关于java处理获取到的Elasticsearch数据的主要内容,如果未能解决你的问题,请参考以下文章
pywinauto获取到的下拉框数据数据不是想要的数据,该怎么处理?
java操作elasticsearch实现查询删除和查询所有