簡體   English   中英

使用Java Api進行彈性搜索查詢

[英]Elastic Search Query with Java Api

我正在開發JSF項目,並將Elastic Search與本機Java Api(不是Jest)一起使用。 我為Elasticsearch索引映射中的高級全文搜索定義了分析器和nGram過濾器。 如何使用Java api進行查詢定義?

curl -XPOST "http://localhost:9200/blurays/_search?pretty" -d'
{
"size": 10,
"query":{
"match":  {
"_all": {
"query": "yellow bird",
"operator": "and"
        }
          }
       }
}'

我不確定您的意圖,但是如果您要創建“ and” /“ or”查詢,請嘗試以下操作:

BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); 

例如:

boolQueryBuilder.must(QueryBuilders.matchQuery(field, value));

您可以根據需要添加任意數量的查詢(任何類型-multiMatch,term等)。 也嘗試try should()或mustNot()方法-取決於您想要什么。

這是一個更復雜的示例: http : //massapi.com/class/bo/BoolQueryBuilder.html


編輯:感謝您的評論,現在我想我明白了。 像下面的東西?

 QueryBuilders.matchQuery(field, value).operator(MatchQueryBuilder.Operator.OR); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM