@Test
public void testSearch() throws Exception {
// 1.创建一个directory对象,也就是索引库存放的位置
Directory directory = FSDirectory.open(new File("D:\\temp\\index"));// 磁盘
// 2.创建一个indexReader对象,需要指定Directory对象
IndexReader indexReader = DirectoryReader.open(directory);
// 3.创建一个indexsearcher对象,需要指定indexreacher对象
IndexSearcher indexSearcher = new IndexSearcher(indexReader);
// 4.创建一个termquery对象,指定查询的域和查询的关键词
Query query = new TermQuery(new Term("fileName","apache"));
// 5.执行查询
TopDocs topDocs = indexSearcher.search(query, 2);
// 6.返回查询结果。遍历查询结果并输出
ScoreDoc[] scoreDocs = topDocs.scoreDocs;
for (ScoreDoc scoreDoc : scoreDocs) {
int doc = scoreDoc.doc;
Document document = indexSearcher.doc(doc);
//文件名称
String fileName = document.get("fileName");
System.out.println(fileName);
//文件内容
String fileContent = document.get("fileContent");
System.out.println(fileContent);
//文件路径
String filePath = document.get("filePath");
System.out.println(filePath);
//文件大小
String fileSize = document.get("fileSize");
System.out.println(fileSize);
System.out.println("==================");
}
// 7.关闭indexreader对象
indexReader.close();
}
Lucene(四)----索引流程之查询索引
最新推荐文章于 2023-01-27 23:14:38 发布