現象: 在搜尋處輸入 2012~2013 ,搜尋報錯
解決辦法:
(1) 在stringutil中新增 如下方法
* 過濾特殊字元
* @param str
* @return
public static string replacespecialstr(string str) ;
for(string s : specialstr) {
str = str.replace(s, "");
return str;
搜尋服務實現類中:
(2)model.setkeyword(stringutil.filter(model.getkeyword()));
model.setkeyword(solrutil.escapechar(model.getkeyword())); **位置處
/** 需要將特殊符號進行轉義*/
string keywordtemp = model.getkeyword();
model.setkeyword(stringutil.filter(model.getkeyword()));
model.setkeyword(solrutil.escapechar(model.getkeyword()));
model.setkeyword(stringutil.replacespecialstr(model.getkeyword()));
(3) solrpageresultcontainer solrpageresultcontainer = queryresult.getsolrpageresultcontainer();
後 新增 如下,再return solrserver.getpageresultcontainerbysolr(solrpageresultcontainer);
model.setkeyword(keywordtemp);
什麼叫全文檢索 全文檢索概念
全文檢索是指計算機索引程式通過掃瞄文章中的每乙個詞,對每乙個詞建立乙個索引,指明該詞在文章中出現的次數和位置,當使用者查詢時,檢索程式就根據事先建立的索引進行查詢,並將查詢的結果反饋給使用者的檢索方式。這個過程類似於通過字典中的檢索字表查字的過程。全文檢索的方法主要分為按字檢索和按詞檢索兩種。按字檢...
什麼叫全文檢索 全文檢索概念
全文檢索是指計算機索引程式通過掃瞄文章中的每乙個詞,對每乙個詞建立乙個索引,指明該詞在文章中出現的次數和位置,當使用者查詢時,檢索程式就根據事先建立的索引進行查詢,並將查詢的結果反饋給使用者的檢索方式。這個過程類似於通過字典中的檢索字表查字的過程。全文檢索的方法主要分為按字檢索和按詞檢索兩種。按字檢...
MSSQL全文檢索
大家可能都會用 select from tb where field like 關鍵字 但是一旦資料量大使用者多,就會造成查詢過慢,因此ms提供一種犧牲空間來換取時間的解決方案。全文檢索。原文請看 我對自己的實現加了些注釋 use popask 使用這個庫 exec sp fulltext data...