一、步骤:
1.存储位置:1)文件:
Directory dir= FSDirectory.open(new File("D:\\LuceneIndex"));
2)内存:
new RAMDirectory(FSDirectory.getDirectory(file));//不建议,只会把一些搜索相关的信息放入到内存,不是全部的索引文件
2.分词器:
Analyzer analyzer=new IKAnalyzer();//这个是中文分词器,并不是lucene自带的(StandardAnalyzer)
3.创建IndexWriter配置实例IndexWriterConfig:
IndexWriterConfig config=new IndexWriterConfig(Version.LUCENE_4_10_4,analyzer );
IndexWriterConfig实例的setter方法可以设置IndexWriter的配置。
4.创建IndexWriter:
IndexWriter iwrite=new IndexWriter(dir, config);
5.创建Document域:
Document doc=new Document();
6.创建Field实例
Field title=new TextField("title", rs.getString("title"),Store.YES);
或者:
FieldType type = new FieldType();
type.setStored(true);
type.setIndexed(true);
type.setTokenized(false);
Field id=new Field("id",String.valueOf(rs.getInt("id")), type);
7.把Field实例添加到Document域中:
doc.add(id);
doc.add(title);
8.IndexWriter把Document域写入索引文件:
iwrite.addDocument(doc);
9.提交、关闭IndexWriter
iwrite.commit();
iwrite.close();