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 (!price[1].equals("*"))
} // 1.6 分頁查詢
integer currpage = (integer) searchmap.get("currpage"); // 提取頁碼
integer pagesize = (integer) searchmap.get("pagesize"); // 每頁記錄數
if (currpage == null)
if (pagesize == null)
query.setoffset((currpage - 1) * pagesize); // 從第幾條記錄查詢
query.setrows(pagesize); // 每頁記錄數
// 1.7 排序
string sortfield = (string) searchmap.get("sortfield");// 排序字段
string sortvalue = (string) searchmap.get("sort");// asc desc
if (sortvalue != null && !sortvalue.equals("")) else if (sortvalue.equals("desc"))
} // ******************** 獲取高亮結果集 ******************************
// 高亮頁物件
highlightpagepage = solrtemplate.queryforhighlightpage(query, tbitem.class);
// 迴圈高亮入口集合(每天記錄的高亮入口)
list> list = page.gethighlighted();
// 對應的搜尋記錄
for (highlightentryhighlightentry : list)
*/// 由於我們要查詢的只有乙個域和乙個值,就可以這樣寫,直接獲取值的高亮
tbitem item = highlightentry.getentity();
if (highlightentry.gethighlights().size() > 0
&& highlightentry.gethighlights().get(0).getsnipplets().size() > 0)
} map.put("rows", page.getcontent());
map.put("totalpages", page.gettotalpages());// 返回總頁數
map.put("totalsize", page.gettotalelements()); // 返回總記錄數
return map;
}
solr高亮顯示
2012 12 14 15 56 3974人閱讀收藏 舉報solr是在lucene的基礎上做的開發,那麼在某些功能的實現上,與lucene也會有相似之處。solr的高亮顯示 包括自動摘要 是通過hl這個param,以及其相關變數來實現的,hl是hightlight的簡寫。lucene中是通過high...
solr 高亮顯示疑問
最近遇到乙個問題,solr全文檢索,撿出的結果中有的文件的檢索詞高亮顯示,但是有的卻沒有高亮 本以為是query.sethighlightfragsize 的預設值太小的緣故,預設為100,設定為200,之後依然沒有高亮,除錯程式發現沒有顯示高亮的文件,gethighlighting get id ...
solr模糊與精確查詢 關鍵字顯示高亮
文件詳情介面 param docid return public resultgetbydocid pathvariable string docid,string source,string keywords,string type if page constants.default min pa...