package lucene.test.analysis; import java.io.IOException; import java.util.Date; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.WhitespaceAnalyzer; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.document.Document; import org.apache.lucene.document.Field; import org.apache.lucene.index.CorruptIndexException; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.IndexWriter.MaxFieldLength; import org.apache.lucene.store.LockObtainFailedException; public class IndexMoreAnalyzer { private static String indexStore="D://MajorWork//javaWeb//luceneTestapi//indexStore"; static protected String[] id={"001","002","003"}; static protected String[] content={"搜索引擎","全文检索","信息检索"}; public static void main(String[] args) { Date start=new Date(); Analyzer analyzer=new WhitespaceAnalyzer(); Analyzer analyzer2=new StandardAnalyzer(); try { IndexWriter writer=new IndexWriter(indexStore,analyzer,true,MaxFieldLength.LIMITED); for(int i=0;i<3;i++) { Document doc=new Document(); Field field_id=new Field("id","id[i]",Field.Store.YES,Field.Index.NOT_ANALYZED); doc.add(field_id); Field field_content=new Field("content","content[i]",Field.Store.YES,Field.Index.ANALYZED); doc.add(field_content); if(1==i) { doc.add(field_content); } else { writer.addDocument(doc,analyzer2); } } writer.optimize(); writer.close(); Date end=new Date(); long indexTime=end.getTime()-start.getTime(); System.out.println("索引完成所需时间:(ms)"); System.out.println(indexTime); } catch (CorruptIndexException e) { e.printStackTrace(); } catch (LockObtainFailedException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } System.out.println("创建索引完成!"); } }