- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Apache Solr34应用实践
Apache Solr3.4应用实践(高亮 拼写检查 匹配相似)Solr 是基于lucene的检索服务器。能够很快的搭建检索服务,并且提供的很多实用的组件。例如 高亮(highlight)、拼写检查(spellCheck)和匹配相位(moreLikeThis)。下面我将在我工作中接触到的一些实践与大家分享。(我当前使用的solr 版本是 3.4,使用tomcat 7.0.21)?(如果你也使用的是 tomcat 服务器,而且查询请求包含中文的话,还需要 修改 TOMCAT_HOME/conf/server.xml 的 Connector ... URIEncoding=UTF-8/ 使用 UTF-8 编码,详见?/solr/SolrTomcatURI_Charset_Config?和?/tomcat-7.0-doc/config/http.htmlhttp)?高亮(highlight)?我们经常使用有哪些信誉好的足球投注网站引擎,比如在google 有哪些信誉好的足球投注网站 java ,会出现如下结果,结果中与关键字匹配的地方是红色显示与其他内容区别开来。??solr 默认已经配置了highlight 组件(详见 SOLR_HOME/conf/sorlconfig.xml)。通常我出只需要这样请求http://localhost:8080/solr/select?q=name:王麻子start=0rows=10hl=truehl.fl=name?,可以看到与比一般的请求多了两个参数 hl=true 和 hl.fl=name 。hl=true 则是开启高亮,hl.fl=name 则告诉solr 对 name 字段进行高亮(如果你想对多个字段进行高亮,可以继续添加字段,字段间用逗号隔开,如 hl.fl=name,name2,name3)。?查询结果如下:?Xml代码??xml?version=1.0?encoding=UTF-8??response??lst?name=responseHeader??int?name=status0/int??int?name=QTime15/int??lst?name=params??str?name=hltrue/str??str?name=hl.flname/str??str?name=qname:王麻子/str??str?name=start0/str??str?name=rows10/str??/lst??/lst??!--此处是一般的返回结果--??result?name=response?numFound=1?start=0??doc??str?name=id4/str??str?name=name王麻子勤劳朴实/str??/doc??/result??!--此处是高亮的返回结果--??lst?name=highlighting??!--id=4--??lst?name=4??!--字段name?的高亮内容--??arr?name=name??!--下面是经过xml转义,其实内容是?em王麻子/em勤劳朴实--??strlt;emgt;王麻子lt;/emgt;勤劳朴实/str??/arr??/lst??/lst?/response?高亮内容与关键匹配的地方,默认将会被 em 和 /em 包围。如果用户想自定义高亮地方的前后标签,可以在请求中再加两个参数 hl.simple.pre 和 hl.simple.post 来分别指定前后标签,如?http://localhost:8080/solr/select?q=name:%E7%8E%8B%E9%BA%BB%E5%AD%90start=0rows=10hl=truehl.fl=namehl.simple.pre=%3Cb%3Ehl.simple.post=%3C/b%3Ehttp://localhost:8080/solr/select?q=name:王麻子start=0rows=10hl=truehl.fl=namehl.simple.pre=bhl.simple.post=/b。或者修改 solrconfig.xml 配置文件中的 highligh searchComponent 来实现。?(highlight 更多请求参数可以参考HighlightingParameters)?拼写检查(spellCheck)?首页 配置 solrconfig.xml,文件可能已经有这两个元素(如果没有添加即可),需要根据我们自己的系统环境做些适当的修改。?Xml代码?searchComponent?name=spellcheck?class=solr.SpellCheckComponent??lst?name=spellchecker??str?name=namedefault/str?
文档评论(0)