開源全文檢索搜尋工具包Lucene3.0.1的使用。
項目環境Struts2 (2.18)+Hibernate(3.0)+Spring(2.5) JDK:1.6 IDE:myEclipse 8.5
項目需求:把站內發布的新聞進行全文解索
新聞實體News
[java] view plain copy public class News { private int id; /**標題*/ private String title; /**內容*/ private String contents; setters(); getters(); } 新聞實體的luceneDao
[java] view plain copy package com.hkrt.dao; import com.hkrt.domain.LuceneSearchResult; import com.hkrt.domain.News; public interface NewsLuceneDao { public static final String FIELD_ID="id"; public static final String FIELD_TITLE = "title"; public static final String FIELD_CONTENTS = "contents"; // 索引存放目錄 public static final String INDEX_DIR = Thread.currentThread().getContextClassLoader().getResource("").getPath()+"index_dir"; /** * 對所有檔案進行重新索引 */ public void rebuildAllIndex(); /** * 對指定上傳檔案對象進行索引並追加到已有的索引檔案中 * @param news */ public void doIndexSingle(News news); /** * 根據關鍵字搜尋,返回合格分頁資料 * @param keyword 關鍵字 * @param pageNo 起始頁 * @param pageSize 每頁要顯示的記錄數 * @return LuceneSearchResult對象 */ public LuceneSearchResult<News> doSeacher(String keyword, int pageNo,int pageSize); /** * 更新檔案的索引 * @param news */ public