java springboot elasticsearch 高亮显示 示例
时间: 2023-11-16 22:01:05 浏览: 120
springboot-elasticsearch-example
以下是Java SpringBoot Elasticsearch高亮显示的示例代码:
```
// 构建查询条件
SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withQuery(QueryBuilders.matchQuery("name", "apple"))
.withHighlightFields(new HighlightBuilder.Field("name").preTags("<em>").postTags("</em>"))
.build();
// 执行查询
SearchHits<Product> searchHits = elasticsearchRestTemplate.search(searchQuery, Product.class);
// 处理查询结果
List<Product> productList = new ArrayList<>();
for (SearchHit<Product> searchHit : searchHits) {
Product product = searchHit.getContent();
if (searchHit.getHighlightFields().containsKey("name")) {
String highlightName = searchHit.getHighlightFields().get("name").fragments()[0].toString();
product.setName(highlightName);
}
productList.add(product);
}
```
以上代码中,我们首先构建了一个查询条件,指定了查询关键词和需要高亮显示的字段。然后执行查询,获取到查询结果。最后遍历查询结果,将高亮显示的内容替换原始内容,最终返回处理后的结果。
阅读全文