lucene入门

lucene初学。创建索引和搜索
创建索引:
Document doc = File2DocumentUtils.file2Document(filePath);
// file->doc
// 维护操作索引库,增删改
IndexWriter indexWriter = new IndexWriter(indexPath, analyzer, true, MaxFieldLength.LIMITED);
indexWriter.addDocument(doc);
indexWriter.close();


搜索:
String queryString = "how";

// 1.转换搜索文本解析人 QUERY
String[] fields = { "name", "content" };
QueryParser queryParser = new MultiFieldQueryParser(fields, analyzer);
Query query = queryParser.parse(queryString);

// 2.进行查询
IndexSearcher indexSearcher = new IndexSearcher(indexPath);
Filter filter = null;
TopDocs topDocs = indexSearcher.search(query, filter, 10000);

System.out.println("总共有【" + topDocs.totalHits + "】条匹配结果");
// 3.打印结果
for (ScoreDoc scoreDoc : topDocs.scoreDocs) {
int docSn = scoreDoc.doc;// 文档内部编号
Document doc = indexSearcher.doc(docSn);// 根据文件内部编号取出文档
File2DocumentUtils.printDocumentInfo(doc);
}

你可能感兴趣的:(Lucene)