【发布时间】:2017-12-20 00:58:53
【问题描述】:
我使用 Spring 开发了一个 REST API 条目,它在 Elasticsearch 中进行搜索,现在我想返回 ES 找到的任何结果作为响应。我不关心搜索结果,也不知道其中的 JSON 结构。我只是想把它还给客户。
我希望这样的事情会起作用:
@RequestMapping(value = "/search/{index:.*}", method = RequestMethod.GET) 公共无效搜索(@PathVariable 字符串索引,@RequestParam 映射 allRequestParams,HttpServletResponse 响应) 抛出 IOException { BoolQueryBuilder 查询 = QueryBuilders.boolQuery(); for (Map.Entry entry : allRequestParams.entrySet()) { query.should(QueryBuilders.fuzzyQuery(entry.getKey(), entry.getValue())); } SearchResponse 结果 = esClient.prepareSearch("nyc_visionzero") .setTypes("日志") .setQuery(查询) 。执行() .actionGet(); SearchHits 命中 = results.getHits(); hits.writeTo(response.getOutputStream()); }但最后一行出现编译错误,因为两个 OutputStream 不兼容。所以我的问题是,将 Elasticsearch 的结果连接到 Spring 的响应中的最简单方法是什么?
【问题讨论】:
标签: java spring elasticsearch