lucene 简单搜索步骤

时间:2023-03-08 16:36:07

1.创建IndexReader实例:

Directory dir = FSDirectory.open(new File(indexDir));
IndexReader reader = DirectoryReader.open(dir);

2.创建IndexSearcher实例:

IndexSearcher searcher = new IndexSearcher(reader);

3.搜索条件:

IKAnalyzer analyzer = new IKAnalyzer();//分词器
analyzer.setUseSmart(true);//分词器设置,智能分词,默认为false
QueryParser parser = new QueryParser("title",analyzer);
Query query = parser.parse("如何一步一步用");

4.搜索结果

TopDocs hits = searcher.search(query, 10);//匹配记录数
// 获取搜索结果
for (ScoreDoc scoreDoc : hits.scoreDocs) {
Document doc = searcher.doc(scoreDoc.doc);
System.out.println(doc.get("id")+" : "+doc.get("title"));
}