我使用Java和Java高级REST客户端。 我需要构建将查找文档的查询。此查询应包含许多用于搜索的字段。 例如,我有这样的json:
{
"timeStamp": "Fri, 29 Dec 2017 15:32:22 +0000",
"value": 314,
"operation": "http://software-testing.ru/library/testing/testing-tools/2638-postman",
"type": "duration",
"system": "front-admin"
}
我需要根据所有字段查找所有文档。 我理解如何通过一个字段(parametr)进行constract查询,但不知道如何使用大量字段进行查询:
@PostMapping("/findMetricsByValues") @Transactional public ResponseEntity findMetricsByValues(@RequestBody ElasticSearchMetrics metrics){
SearchRequest searchRequest = new SearchRequest();
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(QueryBuilders.termQuery("value", metrics.getValue()));
searchRequest.source(sourceBuilder);
SearchResponse searchResponse = null;
try {
searchResponse = client.search(searchRequest);
} catch (IOException e) {
e.printStackTrace();
}
return new ResponseEntity<>(new GenericResponse(searchResponse, CODE_200), HttpStatus.OK); }
有人可以帮忙或提示吗?
答案 0 :(得分:0)