二、实验环境介绍
开发使用的 IDE 为 IDEA,Java 版本为 11.0.2。Lucene 版本 8.2.0。Log4j 版本 2.12.1。Web 界面使用 JSP 动态网页,运行在 Tomcat 服务器中,Tomcat 版本为 7.0.92。
三、实现思路
邮件索引系统中的索引建立为一次性操作,一次索引即可反复使用。所以将该项目分为索引建立与查询两个部分并分别实现。其中索引建立部分使用 Console 界面实现。查询部分使用 Web 界面实现,运行时只需要在服务器端运行索引程序,或者直接将已经生成的索引放置在指定文件夹下即可。
四、具体实现
四、建立索引
该子项目全部代码运行于 LuceneIndex 类中,main 函数入口点负责初始化类,构造函数完成构建索引器、分析器与索引写入对象等操作后,由主函数调用 LuceneIndex 类的 index()方法开始运行索引,index 方法会递归调用自身完成对待索引项目的遍历索引,期间有完善的错误处理与日志机制保证在较大数据集上运行时不会中途退出。最后由主函数调用 close()方法关闭索引写入对象结束索引过程。
四、LuceneIndex 类的成员变量与成员方法
- logger 对象用于进行日志写入与信息输出。
- writer 对象为该程序中所有文件索引的共用索引写入对象。
- numIndexTotal 用于统计索引的文件总数。
- main 函数为入口点,负责启动与关闭索引,并计时。
- LuceneIndex 用于初始化索引器&#