Elasticsearch之RestClient查询文档

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。Elasticsearch之RestClient查询文档,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

GET /goods/_search
{
  "query": {
    "match_all": {}
  }
}
SearchRequest searchRequest=new SearchRequest("goods");
        searchRequest.source().query(QueryBuilders.matchAllQuery());
        SearchResponse search = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
        SearchHits hits = search.getHits();
        long value = hits.getTotalHits().value;
        for (SearchHit hit : hits.getHits()) {
            System.out.println(hit.getSourceAsString());
        }
GET /goods/_search
{
  "query": {
    "match": {
      "title": "华为"
    }
  }
}
 SearchRequest searchRequest=new SearchRequest("goods");
        searchRequest.source().query(QueryBuilders.matchQuery("title","华为"));
        SearchResponse search = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
        SearchHits hits = search.getHits();
        long value = hits.getTotalHits().value;
        for (SearchHit hit : hits.getHits()) {
            System.out.println(hit.getSourceAsString());
        }
GET /goods/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "brandName": {
              "value": "Apple"
            }
          }
        }
      ],
      "filter": [
        {
          "range": {
            "price": {
              "gte": 7000,
              "lte": 8000
            }
          }
        }
      ]
    }
  }
}
 SearchRequest searchRequest=new SearchRequest("goods");
        BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
        boolQueryBuilder.must(QueryBuilders.termQuery("brandName","Apple"))
                .filter(QueryBuilders.rangeQuery("price").gte(7000).lte(8000));
        searchRequest.source().query(boolQueryBuilder);
        SearchResponse search = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
        SearchHits hits = search.getHits();
        long value = hits.getTotalHits().value;
        for (SearchHit hit : hits.getHits()) {
            System.out.println(hit.getSourceAsString());
        }
GET /goods/_search
{
  "query": {
    "match_all": {}
  },
  "from": 0,
  "size": 20
  , "sort": [
    {
      "price": {
        "order": "desc"
      }
    }
  ]
}
  SearchRequest searchRequest=new SearchRequest("goods");
        searchRequest.source().query(QueryBuilders.matchAllQuery()).from(0).size(20).sort("price", SortOrder.DESC);
        SearchResponse search = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
        SearchHits hits = search.getHits();
        long value = hits.getTotalHits().value;
        for (SearchHit hit : hits.getHits()) {
            System.out.println(hit.getSourceAsString());
        }

 

GET /goods/_search
{
  "query": {
    "match": {
      "title": "手机"
    }
  },
  "highlight": {
    "fields": {
      "title": {
        "pre_tags": [
          "<font color='red'>"
        ],
        "post_tags": [
          "</font>"
        ]
      }
    }
  }
}
SearchRequest searchRequest=new SearchRequest("goods");
        searchRequest.source().query(QueryBuilders.matchQuery("title","手机"))
                .highlighter(new HighlightBuilder().field("title").preTags("<font color=\'red\'>").postTags("</font>"));
        SearchResponse search = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
        SearchHits hits = search.getHits();
        long value = hits.getTotalHits().value;
        for (SearchHit hit : hits.getHits()) {
            Goods goods = JSON.parseObject(hit.getSourceAsString(), Goods.class);
            Map<String, HighlightField> highlightFields = hit.getHighlightFields();
            if(highlightFields!=null){
                HighlightField highlightField = highlightFields.get("title");
                if(highlightField!=null){
                    String string = highlightField.getFragments()[0].string();
                    goods.setTitle(string);
                }
            }
            System.out.println(goods);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/196932.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!