elasticsearch ElasticSearchJava API没有';不能给出正确的结果
我有以下ES搜索代码:
elasticsearch ElasticSearchJava API没有';不能给出正确的结果,
elasticsearch,full-text-search,
elasticsearch,Full Text Search,我有以下ES搜索代码: RestHighLevelClient client = new RestHighLevelClient( RestClient.builder( new HttpHost("localhost", 9200, "http"))); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); qb = Qu
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost", 9200, "http")));
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
qb = QueryBuilders.termQuery("title", "Java");
searchSourceBuilder.query(qb);
searchSourceBuilder.from(0);
searchSourceBuilder.size(5);
SearchRequest searchRequest = new SearchRequest("myindex");
searchRequest.types("books");
searchRequest.source(searchSourceBuilder);
SearchResponse sr = client.search(searchRequest);
System.out.println(sr.getHits().totalHits);
它没有给我任何结果,即使有符合此标准的文档。
当我从Kibana运行类似的术语查询时,我会得到以下结果:
GET /myindex/books/_search
{
"query":
{
"term" : {
"title" : {
"value" : "java"
}
}
}
}
区别在于Java代码中的
Java
(大写)和Kibana查询中的Java
(小写)
因为您正在执行
术语
查询,所以案例很重要。如果您使用了匹配
查询,大小写无关紧要,两者都可以按预期工作。区别在于Java代码中的Java
(大写)和Kibana查询中的Java
(小写)
因为您正在执行
术语
查询,所以案例很重要。如果您使用了匹配
查询,则情况无关紧要,两者都会按您的预期工作。很酷,很高兴它有所帮助!很酷,很高兴它有帮助!