博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
How to provide highlighting with Spring data elasticsearch
阅读量:6814 次
发布时间:2019-06-26

本文共 1646 字,大约阅读时间需要 5 分钟。

@Testpublic void shouldReturnHighlightedFieldsForGivenQueryAndFields() {    //given    String documentId = randomNumeric(5);    String actualMessage = "some test message";    String highlightedMessage = "some test message";    SampleEntity sampleEntity = SampleEntity.builder().id(documentId)            .message(actualMessage)            .version(System.currentTimeMillis()).build();    IndexQuery indexQuery = getIndexQuery(sampleEntity);    elasticsearchTemplate.index(indexQuery);    elasticsearchTemplate.refresh(SampleEntity.class);    SearchQuery searchQuery = new NativeSearchQueryBuilder()            .withQuery(termQuery("message", "test"))            .withHighlightFields(new HighlightBuilder.Field("message"))            .build();    Page
sampleEntities = elasticsearchTemplate.queryForPage(searchQuery, SampleEntity.class, new SearchResultMapper() { @Override public
Page
mapResults(SearchResponse response, Class
clazz, Pageable pageable) { List
chunk = new ArrayList
(); for (SearchHit searchHit : response.getHits()) { if (response.getHits().getHits().length <= 0) { return null; } SampleEntity user = new SampleEntity(); user.setId(searchHit.getId()); user.setMessage((String) searchHit.getSource().get("message")); user.setHighlightedMessage(searchHit.getHighlightFields().get("message").fragments()[0].toString()); chunk.add(user); } if (chunk.size() > 0) { return new PageImpl
((List
) chunk); } return null; } }); assertThat(sampleEntities.getContent().get(0).getHighlightedMessage(), is(highlightedMessage));}

 

转载地址:http://zyczl.baihongyu.com/

你可能感兴趣的文章
codeforces730I Olympiad in Programming and Sports(姿势题 优先队列?dp?)
查看>>
POJ 3260 The Fewest Coin
查看>>
201421410018 于佳裔 实验四
查看>>
【VUE】@click加上v-bind绑定切换类名及动画事件
查看>>
Microsoft发布新一代主机:Xbox One
查看>>
运维经验分享:关于系统运维监控的几点建议
查看>>
jQuery渐隐渐现字体发虚的问题
查看>>
[SDOI2008]烧水问题
查看>>
杂项之rabbitmq
查看>>
【转】关于大型网站技术演进的思考(十)--网站静态化处理—动静整合方案(2)...
查看>>
jQuery练习题HTML文件
查看>>
SQL注入原理
查看>>
MySQL 锁(lock与latch)
查看>>
python
查看>>
DataTable数据存入指定路径的Excel文件
查看>>
Linq-C#左连接
查看>>
c和指针读书笔记
查看>>
常用正则表达式集锦
查看>>
JS 验证
查看>>
【Lua】特性和一些基础语法
查看>>