ElasticSearch7查询相关示例

本文介绍了如何在ElasticSearch7中进行高级查询,包括解除默认10000条数据的限制,设置查询的最小匹配条件和优先级,以及实现高亮显示。同时,也讲解了调整索引参数来优化查询性能。
摘要由CSDN通过智能技术生成

ElasticSearch7查询/最小匹配/优先度/高亮/解除查询数量限制

  1. boolQuery使用
  2. minimumShouldMatch参数设置需要匹配条件的数量
  3. boost参数设置匹配条件的优先级
  4. HighlightBuilder设置需要添加高亮的字段
 /**
     * es查询示例 添加高亮
     */
    @Test
    public void queryEsDataRestul() {
   
        //传参
        EsSrvcInfoVo vo = new EsSrvcInfoVo();
        vo.setKeyword("平均值");
        System.out.println(vo.toString());

        //获取分页对象
        PageData pageData = new PageData();
        //接受结果
        List<Map> data = new ArrayList<>();
        RestHighLevelClient client = EsClientMe.getRhlClient();
        //创建请求对象,如果不传参数,这将针对所有索引运行,这里搜索多个索引

        SearchRequest searchRequest = new SearchRequest("srvcinfo");
        //创建封装查询条件参数的对象SearchSourceBuilder,所有的查询条件都会封装到此类
        SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();

        //查询条件 should最小匹配 1
        BoolQueryBuilder boolQuery = QueryBuilders.boolQuery().minimumShouldMatch(1);

//        srvcName srvcDetail 匹配关键词
        if (StringUtils.isNotBlank(vo.getKeyword())) {
   
            //boot 优先度 增加分数
            boolQuery.should(QueryBuilders.termQuery(CommonMapping.SRVC_NAME_IK, vo.getKeyword())).boost(3)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值