java QueryBuilder用法_在Elasticsearch Java API中将_source添加到SearchQueryBuilder的等效函数?...

我正在使用以下搜索查询:

SearchRequestBuilder searchRequestBuilder = client.getClient()

.prepareSearch("index_5589b14f3004fb6be70e4724")

.setSearchType(SearchType.SCAN)

.setScroll(new TimeValue(60000))

.setQuery(QueryStem(stem))

.addFields("field1", "field2")

.setHighlighterPostTags("")

.setHighlighterPreTags("")

.addHighlightedField("field1", 20, 150)

.addHighlightedField("field2", 20, 150)

.setFrom(1)

.setSize(1);

DSL的等效版本为:

GET index_5589b14f3004fb6be70e4724/document_set/_search

{

"query": {

// some query

},

"fields": ["field1", "field2"],

"highlight": {

"pre_tags" : [""],

"post_tags" : [""],

"fields": {

"field1": {

"number_of_fragments": 10,

"fragment_size": 20

},

"field2": {

"number_of_fragments": 10,

"fragment_size": 20

}

}

}

}

我.getSource()在“搜索”响应中进行了尝试,但它给了我NullPointerException。然后,我检查了Sense,发现它没有任何_source字段。但是,如果我将其添加"_source":

[...],到查询DSL中,则会得到所需的所需数据。

我想添加"_source": ["docset_id",

"doc_id"],到中SearchRequestBuilder。我该怎么办?我当时在考虑使用.setSource()它,但它还有其他作用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值