![](/img/trans.png)
[英]How To Use ElasticSearch In Vertx Java With EventBus?
[英]How to use elasticsearch in Java
我正在尝试用Java构建一个POST请求体,如下所示:
{
"query":{
"filtered":{
"filter":{
"and":[
{"terms":{"primaryType":["container"]}} , {"terms":{"LifeCycleState":["project"]}}
]
},
"query":{"match_all":{}}
}
},
"aggs": {
"status":{ "terms": {"field":"container:status"} }
}
}
到目前为止,这是我得到的:
final FilterBuilder primaryTypeFilter = FilterBuilders.termsFilter("primaryType", "container");
final FilterBuilder lifeCycleStateFilter = FilterBuilders.termsFilter("LifeCycleState" , "project");
这给我带来了这个:
"terms":{"primaryType":["container"]}
"terms":{"LifeCycleState":["project"]}
我不知道如何从这里前进,如何用“和”,“过滤”,“查询”等包装术语。
谢谢。
您正在使用旧版本的elasticsearch。 我建议升级。
从5.0开始,您必须使用具有filter
部分的bool
查询。 https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-compound-queries.html#java-query-dsl-bool-query
就像是:
QueryBuilder qb = boolQuery()
.filter(termQuery("primaryType", "container")
.filter(termQuery("LifeCycleState" , "project"));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.