ElasticSearch(6.2.2)的java API官方文档的总结 (三)

本文介绍了Elasticsearch中SearchRequest的基本使用方法及其可选参数配置。包括如何构造搜索请求、添加查询条件、设置检索范围及类型等。此外,还详细解释了SearchSourceBuilder的使用,如设置查询、分页、检索数量及时限等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 : SearchRequest用于任何与搜索文档,聚合和建议有关的操作,并且还提供了对生成的文档进行高亮显示的方法。 在最基本的形式中,我们可以向请求添加一个查询:

     1:添加一个SearchRequest 的对象用于发送请求

   2:添加一个 SearchSourceBuilder 对象,用于添加搜索的参数(例如,分页信息页码,页容量等)

   3:将match_all添加到 searchSourceBuilder中

   SearchRequest searchRequest = new SearchRequest();

           SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();

         searchSourceBuilder.query(QueryBuilders.matchAllQuery());

 

二:可选参数:

  1 SearchRequest 中可以选择的设置参数:

    1.1  添加检索的索引

    1.2 添加检索的类型

         SearchRequest searchRequest = new SearchRequest("posts");

           searchRequest.types("doc");

    1.3 SearchRequest 的其他的一些可以设置的参数:

      1.3.1 设置路由的参数(?)

             searchRequest.routing("routing");

      1.3.2 SearchRequest 设置指数参数打的可选指数 ,控制不可用索引如何解析以及如何扩展通配符表达式(?)

        searchRequest.indicesOptions(IndicesOptions.lenientExpandOpen());

      1.3.3 使用首选项参数,例如执行搜索以选择本地碎片。缺省值是在整个分片中随机化。(?)

        searchRequest.preference("_local");

 

     2 SearchSourceBuilder的检索参数的设置   

    

       <1>使用默认选项创建一个SearchSourceBuilder

      SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); 
      <2> 设置查询。 可以是任何类型的QueryBuilder       sourceBuilder.query(QueryBuilders.termQuery("user", "kimchy"));
      <3> 在指定索引下,检索开始的位置(从指定的记录条数的位置开始查询) 默认是0       sourceBuilder.from(0);
      <4> 检索记录数的总数       sourceBuilder.size(5);
<5> 设置一个可选超时,控制允许搜索的时间。       sourceBuilder.timeout(new TimeValue(60, TimeUnit.SECONDS));

 

 三 :将 SearchSourceBuilder 的对象设置到

转载于:https://www.cnblogs.com/zhaikaixuan/p/8492749.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值