ElasticSearch 8.x 版本如何使用 SearchRequestBuilder 检索
warning:
这篇文章距离上次修改已过192天,其中的内容可能已经有所变动。
在Elasticsearch 8.x 版本中,SearchRequestBuilder
用于构建和执行搜索请求。以下是使用 SearchRequestBuilder
来执行搜索查询的基本步骤和示例代码:
- 获取
SearchRequestBuilder
实例。 - 使用
SearchRequestBuilder
的方法设置搜索查询,如指定索引、查询类型、分页信息等。 - 调用
get()
方法执行搜索并获取结果。
示例代码:
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchRequestBuilder;
// 假设 client 是已经配置好的 RestHighLevelClient 实例
RestHighLevelClient client;
// 创建一个 SearchRequestBuilder
SearchRequestBuilder searchRequestBuilder = new SearchRequestBuilder(client);
// 设置索引名
searchRequestBuilder.setIndices("your_index_name");
// 设置查询条件
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchQuery("your_field", "your_value"));
// 设置搜索源
searchRequestBuilder.setSource(searchSourceBuilder);
// 执行搜索
SearchRequest searchRequest = searchRequestBuilder.request();
SearchResponse searchResponse = searchRequestBuilder.get(RequestOptions.DEFAULT);
// 处理搜索结果
// ...
// 关闭 client
client.close();
请确保替换 your_index_name
, your_field
, 和 your_value
为你的实际索引名、字段名和值。同时,确保你的环境中已经配置了Elasticsearch客户端实例 client
。
评论已关闭