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