我正在将 java 应用程序从弹性搜索高级客户端迁移到 java api 客户端。 代码中有这样的范围查询。
QueryBuilders.rangeQuery("startDate").lte(dateUtils.today())
需要将其更改为java api客户端代码。
有人可以帮忙吗?
https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current/searching.html
Query dateRangeQuery = RangeQuery.of(r -> r
.field("startDate")
.lte(dateUtils.today())
)._toQuery();
_toQuery() 通常不是标准 Elasticsearch Java API 客户端 RangeQuery 构建器的一部分。相反,您可以直接使用 Query.of() 从 RangeQuery 创建查询。具体方法如下:
Query dateRangeQuery = Query.of(q -> q
.range(r -> r
.field("field")
.lte(JsonData.of("3")) // Assuming you want to use "3" as the upper limit
)
);