Elasticsearch Java API: Return 一个布尔值
Elasticsearch Java API: Return a boolean value
我需要构建一个查询,returns 一个 Java 可以读取的布尔值。当我尝试这个时:
QueryBuilder qb = matchQuery(
"user.name",
"user123"
);
SearchResponse response = client.prepareSearch("logstash-*").addFields("user.name")
.setTypes("names").setQuery(qb)
.execute()
.actionGet();
它 returns user123 的所有点击。如果 user123 不存在,它 returns 如下:
{
"took" : 69,
"timed_out" : false,
"_shards" : {
"total" : 75,
"successful" : 75,
"failed" : 0
},
"hits" : {
"total" : 0,
"max_score" : null,
"hits" : [ ]
}
}
然而,我需要的是真值或假值。如果用户存在,则为 true,如果不存在,则为 false。我怎样才能做到这一点?
谢谢。
如何Count API并检查结果是否为0?
QueryBuilder qb = matchQuery(
"user.name",
"user123"
);
SearchResponse response = client.prepareCount("logstash-*").addFields("user.name")
.setTypes("names").setQuery(qb)
.execute()
.actionGet();
return response.count() != 0 // return true if found
我需要构建一个查询,returns 一个 Java 可以读取的布尔值。当我尝试这个时:
QueryBuilder qb = matchQuery(
"user.name",
"user123"
);
SearchResponse response = client.prepareSearch("logstash-*").addFields("user.name")
.setTypes("names").setQuery(qb)
.execute()
.actionGet();
它 returns user123 的所有点击。如果 user123 不存在,它 returns 如下:
{
"took" : 69,
"timed_out" : false,
"_shards" : {
"total" : 75,
"successful" : 75,
"failed" : 0
},
"hits" : {
"total" : 0,
"max_score" : null,
"hits" : [ ]
}
}
然而,我需要的是真值或假值。如果用户存在,则为 true,如果不存在,则为 false。我怎样才能做到这一点?
谢谢。
如何Count API并检查结果是否为0?
QueryBuilder qb = matchQuery(
"user.name",
"user123"
);
SearchResponse response = client.prepareCount("logstash-*").addFields("user.name")
.setTypes("names").setQuery(qb)
.execute()
.actionGet();
return response.count() != 0 // return true if found