ElasticSearch 学习:JAVA HighLevel REST Client--简单搜索

进行全文搜索不同于文档查看,全文搜索在所有文档中查找与检索内容相关的内容(成为hit)的文档,并返回。

1.创建客户端

RestHighLevelClient client = new RestHighLevelClient(

                           RestClient.builder(new HttpHost("10.0.2.190",9200,"http"))); 

2.创建检索内容
 

 //大多数的关于搜索的参数会存储在SearchSourceBuilder中,它提供了所有会出现在search request body中的参数的setter。

  SearchSourceBuilder searchSourchBuilder = new SearchSourceBuilder();

  searchSourchBuilder.query(QueryBuilders.termQuery("lyrics", "boys"));

3.生成请求

SearchRequest searchRequest = new SearchRequest("music");//music表示搜索的index。可以不加参数,那样意味着搜索所有index

searchRequest.types("songs").indicesOptions(IndicesOptions.LENIENT_EXPAND_OPEN);//songs表示搜索的类型,可以为空

searchRequest.source(searchSourchBuilder);//将检索内容加入请求

4.发送请求并接收响应

SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);

5.处理响应结果

SearchHits searchHits = searchResponse.getHits();

              SearchHit[] hits = searchHits.getHits();

              //输出至控制台

              for(SearchHit hit : hits) {

                     System.out.println(hit.getSourceAsString());

              }

6.关闭client

client.close();

猜你喜欢

转载自blog.csdn.net/ddsszzy/article/details/83895380