Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ElasticSearch 5.3 SearchHit.field_Java_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Java,elasticsearch" /> elasticsearch,Java,elasticsearch" />

Java ElasticSearch 5.3 SearchHit.field

Java ElasticSearch 5.3 SearchHit.field,java,elasticsearch,Java,elasticsearch,我一直在ES2.3中使用这段代码,效果很好。我正在查询弹性搜索中已加载的数据。在ES 5.3中,我无法做到这一点。我只是想从加载到ES中的300个字段中获取某些字段的值。我希望结果以“|”分隔,而不是JSON。有没有一种方法可以与ES 5.3进行类似的操作 for( SearchHit hit : response.getHits()) { String s0 = hit.field("first_name").getValue().toString(); result.add(s0);

我一直在ES2.3中使用这段代码,效果很好。我正在查询弹性搜索中已加载的数据。在ES 5.3中,我无法做到这一点。我只是想从加载到ES中的300个字段中获取某些字段的值。我希望结果以“|”分隔,而不是JSON。有没有一种方法可以与ES 5.3进行类似的操作

for( SearchHit hit : response.getHits())
{
 String s0 = hit.field("first_name").getValue().toString();
 result.add(s0);
 String s1 = hit.field("last_name").getValue().toString();
 result.add(s1);
 String s2 ="";
 if(hit.fields().containsKey("middle_name"))
{
 String s2 = hit.field("middle_name").getValue().toString();
 result.add(s2);
}

finalresult = s0 + "|" + s1 + "|" + s2;
}
提前感谢您对(SearchHit:response.getHits()的帮助
for( SearchHit hit : response.getHits())
            {
                Map<String, Object> map = hit.getSource();
             String s0 = map.get("first_name").toString();
             result.add(s0);
             String s1 = map.get("last_name").toString();
             result.add(s1);
             String s2 ="";
             if(map.containsKey("middle_name"))
            {
             String s2 = map.get("middle_name").toString();
             result.add(s2);
            }

            finalresult = s0 + "|" + s1 + "|" + s2;
            }
{ Map Map=hit.getSource(); 字符串s0=map.get(“first_name”).toString(); 结果。添加(s0); 字符串s1=map.get(“姓氏”).toString(); 结果:添加(s1); 字符串s2=“”; if(地图容器(“中间名称”)) { 字符串s2=map.get(“middle_name”).toString(); 结果:添加(s2); } 最终结果=s0+“|”+s1+“|”+s2; }
在ES 5.3中执行此操作时,您是否遇到任何异常?