ElasticSearch查询的时候,如果通过rest查询,我们知道,通过设置_source:["name","age"],这样就可以设置好查询结果,过滤掉不需要的字段。那么,在java中用SearchRequestBuilder searchRequestBuilder = client.prepareSearch("test1").setTypes("test11")..........
这样弄的时候怎么进行设置呢?每次查询的结果每条记录都是所有的字段值,怎么设置需要的字段,我看里面有个setSource,试了一下,没管用啊。
这样弄的时候怎么进行设置呢?每次查询的结果每条记录都是所有的字段值,怎么设置需要的字段,我看里面有个setSource,试了一下,没管用啊。
4 个回复
stab - freshman
赞同来自: ld512870 、Rubricate
lemonr - 80后
赞同来自:
jsonStr = hit.getSourceAsString();
System.out.println(jsonStr);
为啥输出的是null
lemonr - 80后
赞同来自:
String result = hit.getFields().get("name").getValue();
jingkyks - 水果铅笔2B橡皮
赞同来自:
2:在api方面,addField就可以返回指定字段,设置之后getSourceAsString就为null了。