利用Lucene的IndexWriter創建索引(詳解)java
須要lucene-analyzers-common-4.5.1.jar以上linux
/*
* 創建索引,而後把創建後的文檔添加到索引中去
* 提示先使用Document和Field把Field加入到Document中去,
* 接着把Document創建成爲一個索引
* */
package comThree;apache
import java.io.IOException;框架
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexWriter;分佈式
public class BookIndex{oop
//建立索引的目錄
private String INDEX_PATH = "E:\\Lucene項目\\索引目錄";
Document bookdoc1 = null;
public BookIndex(){spa
bookdoc1 = new Document();
System.out.println("開始建立書的Field字段---------->>>>");htm
//書的編號
Field bookNo = new Field("booknumber", "FB309663004", Field.Store.YES, Field.Index.TOKENIZED);
//書名
Field bookName = new Field("bookName", "鋼鐵是怎樣煉成的", Field.Store.YES, Field.Index.TOKENIZED );索引
//書的做者
Field anthor = new Field("author", "匿名", Field.Store.YES, Field.Index.TOKENIZED);文檔
//出版日期
Field publishdate = new Field("publishdate", "出版日期", Field.Store.YES, Field.Index.NO);
//描述
Field bookabstract = new Field("abstract", "鋼鐵是怎樣煉成的", Field.Store.NO, Field.Index.TOKENIZED);
//價格
Field price = new Field("price", "25.00", Field.Store.YES, Field.Index.NO);
System.out.println("完成建立書的Field字段---------->>>>");
System.out.println("開始將書的字段放入到文檔中-------------》》");
//把Field加入Document
bookdoc1.add(bookNo);
bookdoc1.add(bookName);
bookdoc1.add(bookabstract);
bookdoc1.add(publishdate);
bookdoc1.add(price);
System.out.println("完成書的字段放入到文檔中------------->>>>>");
try{
System.out.println("開始建立索引-------------------->>>>");
//建立索引實例
IndexWriter writer = new IndexWriter(INDEX_PATH, new StandardAnalyzer());
//構建一個indexWriter的實例
writer.addDocument(bookdoc1);
//在這裏必需要關閉,不然會出現異常,例如數據沒有寫入完整。
writer.close();
System.out.println("完成索引的建立而且存儲完畢, 索引的存放位置在:" + INDEX_PATH);
}catch(IOException e){
e.printStackTrace();
}
}
public static void main(String[] args){
BookIndex BI = new BookIndex();
}
}
--------------------------------------分割線 --------------------------------------
基於Lucene多索引進行索引和搜索 http://www.linuxidc.com/Linux/2012-05/59757.htm
Lucene 實戰(第2版) 中文版 配套源代碼 http://www.linuxidc.com/Linux/2013-10/91055.htm
Lucene 實戰(第2版) PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91052.htm
使用Lucene-Spatial實現集成地理位置的全文檢索 http://www.linuxidc.com/Linux/2012-02/53117.htm
Lucene + Hadoop 分佈式搜索運行框架 Nut 1.0a9 http://www.linuxidc.com/Linux/2012-02/53113.htm
Lucene + Hadoop 分佈式搜索運行框架 Nut 1.0a8 http://www.linuxidc.com/Linux/2012-02/53111.htm
Lucene + Hadoop 分佈式搜索運行框架 Nut 1.0a7 http://www.linuxidc.com/Linux/2012-02/53110.htm
Project 2-1: 配置Lucene, 創建WEB查詢系統[Ubuntu 10.10] http://www.linuxidc.com/Linux/2010-11/30103.htm