@Autowired
private SolrTemplate solrTemplate; @Override
public Map<String, Object> search(Map searchMap) {
return searchList(searchMap);
} //被本类调用
private Map searchList(Map searchMap){ SimpleHighlightQuery highlightQuery = new SimpleHighlightQuery(new Criteria("hyd_keywords").is(searchMap.get("keywords")));
highlightQuery.setHighlightOptions(new HighlightOptions().addField("hyd_title").setSimplePrefix("<em style='color:red'>").setSimplePostfix("</em>"));
HighlightPage<TbItem> page = solrTemplate.queryForHighlightPage(highlightQuery, TbItem.class); for (HighlightEntry<TbItem> highlightEntry : page.getHighlighted()) {
TbItem tbItem = highlightEntry.getEntity(); if(highlightEntry.getHighlights().size()>0 && highlightEntry.getHighlights().get(0).getSnipplets().size()>0){
tbItem.setTitle(highlightEntry.getHighlights().get(0).getSnipplets().get(0));//设置高亮的结果
}
} HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("rowsHyd", page.getContent());
return hashMap;
}

pyg  search 高亮搜索

思路:创建个SimpleHighlightQuery ,往里丢个条件Criteria,在丢个 满足条件 的时候 什么东西 要去干什么事(HighlightOptions中设置),   把前面的东西 丢到 查询中,并给个要返回什么类型(反射),拿到  东西 咔咔一顿 设置,最后再通过getContent()拿到设置完的东西

new HighlightOptions().addField("hyd_title")  可以添加多个。

//获取高亮列表(高亮域的个数)
List<Highlight> highlightList =highlightEntry.getHighlights();

List<String> sns = h.getSnipplets();//每个域有可能存储多值   (hyd_keywords)  copy域与multiValued 的关系       ---------情景没有试

Snipplet:片段

最新文章

  1. 面向对象之struct
  2. socket的简单通信
  3. 网络攻击之二:XSS(之一是SQL注入,前面有文章)
  4. C/C++中static关键字详解-zz
  5. as3.0服务端FMS软件常用的方法与属性参考示例
  6. 【Python】一个python实例:给重要的文件创建备份.摘自crossin-python简明教程
  7. [JDBC-2] JDBC CURD
  8. localtime()方法的疑惑
  9. 查询(Query)和标识(Identify)
  10. C#微信公众号开发--网页授权(oauth2.0)获取用户基本信息二
  11. M-移动端的webapp页面布局教程和webapp实战分析
  12. [LeetCode] Smallest Range 最小的范围
  13. Java8 list转map 坑
  14. 将Maple输出的LaTex导出到txt文件
  15. sqlserver数据库查询,在数据类型不一致时容易出错
  16. SQLServer 学习笔记 序
  17. 如何在Visual Studio VS中定义多项目模板
  18. [Algorithm] Deferred Acceptance Algorithm
  19. ABAP-SAP的LUW和DB的LUW的区别
  20. 【原创】获取MySQL crash 时的core file

热门文章

  1. leetcode5
  2. tensorflow实战系列(四)基于TensorFlow构建AlexNet代码解析
  3. phpexcel导入导出
  4. jmeter 的安装与配置
  5. TXLSReadWriteII2 读取数据
  6. Unity3D AssetBundle相关
  7. Object.assign()解释整理
  8. springmvc shiro UnauthorizedException 异常解决方案
  9. 100-days: eleven
  10. [leetcode]40. Combination Sum II组合之和之二