关于solr的多字段高亮问题
来源:互联网 发布:geo数据挖掘套路 编辑:程序博客网 时间:2024/06/05 02:05
我们在使用solr的时候,难免碰到使用多字段的高亮问题。
比如:
我们solr的字段创建是这样的:
<entity name="weibo" query="select id, content from weibo"> <field column="content" name="weibo_content"/></entity>
在这个搜索结果中,我们搜索的是“济南”关键字,使用的weibo_content字段,但是我们的结果为:
这是明显不行的,为什么?
因为发微博的用户“济南凡事”的“济南”很明显没有被加亮。
那么我们必须这样创建字段:
<entity name="weibo" query="select w.id id, w.content wcontent, u.username uname from ( select id, content, master_id from weibo ) w, user_table u where w.master_id = u.id"> <field column="wcontent" name="weibo_content"/> <field column="uname" name="weibo_content"/></entity>
我们将这条微博的用户名字也加进来,这样,我们就可以同时对微博内容和用户名字进行加亮。
那么如果是普通的高亮设置是无法让solr进行多字段的高亮的。
这是普通的solr查询:
http://localhost:8983/solr/weixinqing/select?df=weibo_content&hl.fl=weibo_content&hl.simple.post=%3C/em%3E&hl.simple.pre=%3Cem%3E&hl=on&indent=on&q=%E6%B5%8E%E5%8D%97&wt=json
我们可以查看结果:
"highlighting":{ "2":{ "weibo_content":["<a class='k' href='https://m.weibo.cn/k/<em>济南</em>身边事?from=feed'>#<em>济南</em>身边事#</a>【<em>济南</em>美女告白交警小哥--向全世界宣布爱你】网友"]}}}
很明显只有一个字段被加亮了,本来应该两个才是啊,“济南凡事”去哪里了?
我们可以查看官方文档 https://cwiki.apache.org/confluence/display/solr/Highlighting
其中使用hl.preserveMulti
可以让多字段高亮。
If true, multi-valued fields will return all values in the order they were saved in the index. If false, only values that match the highlight request will be returned.
将原来的语句改为:
http://localhost:8983/solr/weixinqing/select?df=weibo_content&hl.fl=weibo_content&hl.simple.post=%3C/em%3E&hl.simple.pre=%3Cem%3E&hl=on&indent=on&q=%E6%B5%8E%E5%8D%97&wt=json&hl.preserveMulti=true
加上&hl.preserveMulti=true
就可以了。
阅读全文
1 0
- 关于solr的多字段高亮问题
- solr多字段排序
- 搜索引擎solr系列---多字段匹配的实现方法
- 关于数据库多字段匹配问题
- 关于Solr的基本概念
- 八、关于solr内存不足问题
- 关于在Linux上安装solr遇到404的问题
- 关于vs2013创建WINDOWS程序无法使用多字符集的问题
- 关于VC多字节字符集和unicode宽字符集的使用和问题(转)
- solr DocumentCache的问题
- 多字节字符集字符串的遍历问题
- 关于 VS2008 字符集改用多字节字符集时,控件显示样式变为旧样式的问题的解决
- 关于solr的一些心得体会
- 关于Solr的各种DirectoryFactory
- 关于solr的开发文档
- solr多字段查询,打分权重
- solr检索乱码的问题
- solr检索乱码的问题
- github制作你自己的Android studio依赖引用文件
- Linux中的格式输出---Printf用法
- 2017chinajoy盛大开幕,几维安全携最新APP安全加固产品闪亮登场!
- 2017杭电多校联赛第二场-Is Derek lying?(hdu6054)
- 算法导论 学习笔记 第四章 递归
- 关于solr的多字段高亮问题
- 一个错误日志记录工具类
- ES6 新特性summary
- 【转】轻松学,Java 中的代理模式及动态代理
- zookeeper系列之通信模型(转)
- 颠倒Excel数据行顺序
- Linux下安装配置JDK6
- 分布式锁Memcached 和 Redis 分布式锁方案 收藏其他网页···
- U盘安装 centos Minimal 版本