Elasticsearch - 使用java api获取源字段数据 [英] Elasticsearch - get source field data with java api
本文介绍了Elasticsearch - 使用java api获取源字段数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要一些在嵌套文档中的字段,由于不能将嵌套字段作为对,我需要'_source'来获取它们。
这是以前的问题以获得ES查询[链接],并且它的效果很好。
但是无法将其查询转换为jest代码。
以下是我的尝试。
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()。query(
query
.fields(//需要_source但没有方法
oid,
_source.events.activityoid,
_source.events.worktime) ;
解决方案
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()
()
.fetchSource(new String []空值);
I'm using elastic search with jest (as java client). I need some fields that is in nested document and since cannot get nested fields as pair, I need '_source' to get them.
Here is previous question to get them in ES query[ Link ], and It works well.
BUT cannot convert its query as jest code. Below is my try.
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().query(
query
)
.fields( // need _source but no method.
"oid",
"_source.events.activityoid",
"_source.events.worktime");
解决方案
Try using fetchSource()
like this:
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()
.query(query)
.fetchSource(new String[] {
"oid",
"events.activityoid",
"events.worktime"
}, null);
这篇关于Elasticsearch - 使用java api获取源字段数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文