Я работаю с ES 5.6.16. Следующие результаты запроса идеально подходят для моей кибаны. Я хочу использовать код Java для получения результата.
Запрос
GET nutrients/_search
{
"query": {
"bool": {
"must": {
"query_string": {
"query": "chicken shredded , mint"
}
}
}
}
}
Я пробовал следующий код, но он не возвращает ничего . (0 совпадений)
@Autowired
RestHighLevelClient client;
@RequestMapping(value = "/search", method = RequestMethod.GET)
public @ResponseBody
String getItem(@RequestParam("string") String string) throws IOException {
SearchRequest searchRequest = new SearchRequest();
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(QueryBuilders.matchQuery("Nutrient", string));
sourceBuilder.from(0);
sourceBuilder.size(95);
sourceBuilder.timeout(new TimeValue(60, TimeUnit.SECONDS));
searchRequest.indices("nutrients");
searchRequest.source(sourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
return searchResponse.toString();
}
Следующие зависимости
implementation 'org.springframework.boot:spring-boot-starter-data-elasticsearch'
compile group: 'org.elasticsearch.client', name: 'transport'
compile group: 'org.elasticsearch.plugin', name: 'transport-netty4-client'
compile 'org.elasticsearch.client:elasticsearch-rest-high-level-client'
Как я мог получить результаты?