2012-12-14 15:56
3974人閱讀收藏
舉報solr是在lucene的基礎上做的開發,那麼在某些功能的實現上,與lucene也會有相似之處。
solr的高亮顯示(包括自動摘要),是通過hl這個param,以及其相關變數來實現的,hl是hightlight的簡寫。lucene中是通過highlighter來操作高亮和摘要的。
配置高亮的相關屬性,是在solrconfig.xml中配置的。在 下進行配置。solrconfig.xml檔案中包含多個requesthandler的標籤,但是只有在上述的名為search的標籤中配置才有效。現將配置的案列公布如下:
其中,hl是指定是否使用高亮;hl.fl,指定對哪些域進行高亮,對多個域進行高亮的話,好像是用逗號隔開;f.name.hl.fragsize是指摘要的長度,預設0代表不做摘要。而hl.******.pre和hl.******.post則是指定高亮時顯示的格式,預設是。詳細內容請參見:設定完成後,用solr檢視索引,你會發現如下格式的資料,其中lst中的name是id。
在solrj中,通過queryresponse物件的gethighlighting()方法獲得。該方法返回 map>>型別的資料。其中第乙個map中的key是id,第二個map中的key是field,list中封裝的就是高亮與摘要處理過後的內容了。
solr高亮引數說明:
綜合資料(智慧型提示)
facet的官方文件:
逗號用%20表示)
solr 高亮顯示疑問
最近遇到乙個問題,solr全文檢索,撿出的結果中有的文件的檢索詞高亮顯示,但是有的卻沒有高亮 本以為是query.sethighlightfragsize 的預設值太小的緣故,預設為100,設定為200,之後依然沒有高亮,除錯程式發現沒有顯示高亮的文件,gethighlighting get id ...
solr查詢列表並高亮顯示
private mapsearchlist map searchmap 1.3按品牌篩選 if equals searchmap.get brand 1.4按規格篩選 if searchmap.get spec null 1.5 篩選 if equals searchmap.get price if...
Solr高亮顯示highlight的三種實現
高亮顯示在搜尋中使用的比較多,比較常用的有三種使用方式,如果要對某field做高亮顯示,必須對該field設定stored true 第一種是普通的高亮顯示highlighter,根據查詢的docidset,獲取documents,並獲取當前document的需要高亮的field的value,根據q...