private string searchdir = null;
private static file indexfile = null;
/** * 讀取索引檔案
* @return
* @throws exception
*/private indexsearcher getsearcher() throws exception
/** * 中文分詞工具
* @return
*/private ikanalyzer getanalyzer()else
}/** * 根據頁碼和分頁大小獲取上一次的最後乙個scoredoc
*/private scoredoc getlastscoredoc(int pageindex,int pagesize,query query,indexsearcher searcher,sort sort) throws ioexception
/*** 查詢列表ajax方法
*/@suppresswarnings("unchecked")
public void searchselect() throws exception;
queryparser qp = new multifieldqueryparser(version,queryfields, analyzer);
query query = qp.parse(keyword);
//構建排序方式
sort sort = new sort(new sortfield("id", sortfield.type.int, true));// false公升序true降序
scoredoc lastsd = getlastscoredoc(pageno,perpagenumber, query, isearcher,sort);
//通過最後乙個元素搜尋下頁的pagesize個元素
topdocs topdocs = isearcher.searchafter(lastsd,query,perpagenumber,sort);
long count = 0l;
//獲取總條數
count = topdocs.totalhits;
//獲取資料
scoredoc hits = topdocs.scoredocs;
listlist = new arraylist();
string filefunction = "com.krkj.hntps.picture";
//裝配資料
for (int i = 0; i < hits.length; i++)
}
Lucene分頁方式
推薦的做法是為每一次分頁導航都執行一次新的 查詢。因為hits中儲存的並不是真正的document,因此可以通過hits.doc index 的方式取出在一定範圍內的document。在獲 得hits後可以用類似下面的方法進行分頁處理 private list proces s hits hits,...
Lucene分頁查詢
個人認為最好每一次分頁導航都執行一次新的 查詢。color red lucene舊版本中常用方法 color hits中儲存的並不是真正的document,因此可以通過hits.doc index 的方式取出在一定範圍內的document。在獲 得hits後可以用類似下面的方法進行分頁處理 priv...
lucene搜尋結果分頁
如題,做lucene搜尋引擎時遇到的問題,不太會web程式設計。只知道jsp支援從頁面調後台,沒用什麼框架。現在給出自己的一些設計思路,不一定高效,不一定主流。我後台有個searchservice,其中有函式,大致是這樣的 public searchresults search string key...