Elasticsearch - 使用java api获取源字段数据

时间:2016-07-29 08:41:15

标签: elasticsearch jest

我使用jest弹性搜索(作为java客户端)。 我需要一些嵌套文档中的字段,因为无法将嵌套字段作为对,我需要' _source'得到他们。

以前的问题是在ES查询[Link]中获取它们,并且效果很好。

但是无法将其查询转换为jest代码。 以下是我的尝试。

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().query( 
            query
        )
        .fields(      // need _source but no method.
          "oid", 
          "_source.events.activityoid", 
          "_source.events.worktime");

1 个答案:

答案 0 :(得分:6)

尝试使用fetchSource(),如下所示:

SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder()
    .query(query)
    .fetchSource(new String[] {
      "oid", 
      "events.activityoid", 
      "events.worktime"
    }, null);