ElasticSearch各种查询对象Query的使用
ElasticSearch提供QueryBuilders.queryStringQuery(要搜索的内容)查询方法,对所有字段进行分词查询。
分词查询
SearchResponse searchResponse = client.prepareSearch("blog1")
.setTypes("article").setQuery(QueryBuilders.queryStringQuery("学习"))
.get();
模糊查询
*代表任意字符串
?代表单个字符串
SearchResponse searchResponse = client.prepareSearch("blog1")
.setTypes("article").setQuery(QueryBuilders.wildcardQuery("content","*学习*"))
.get();
词条查询
词条查询,默认的分词逻辑是:一个英文单词为一个分词,一个中文汉字为一个分词。
SearchResponse searchResponse = client.prepareSearch("blog1")
.setTypes("article").setQuery(QueryBuilders.termQuery("content","搜"))
.get();