需求分析
- 在電腦上找一個已知文件名,卻不知道其絕對路徑的文件,就需要打開每一個磁盤,打開每一個文件夾,查找每一個子文件,速度非常慢,需要很長時間,於是通過查閱資料結合所學內容實現了需求,可以很方便的找到文件路徑。
- 言簡意賅:通過文件名或者文件類型找到所包含的所有文件路徑。
初始計劃
- 解決命令行下文件搜索問題,輸入文件名或文件類型,得到相關文件的絕對路徑。
概要設計
使用技術
- JDBC
- Java多線程
- Java文件操作
- H2數據庫
- Lombok庫
- 文件監控(Apache Commons IO)
詳細設計
- 主要由檢索及索引文件信息兩大塊構成:
- 功能實現的過程中,主要採用了分層實現
- 1.索引文件信息:
-
指定目錄進行遍歷
-
指定目錄不進行遍歷(即排除目錄)
- 2.數據庫存儲
-
選擇嵌入式數據庫H2,可以跟着程序一起發送
- 3.檢索文件信息
-
根據檢索條件進行搜索
-
若檢索文件在本地已經不存在,即在數據庫記錄中刪除
- 4.文件監控
-
指定目錄的文件新增,打印新增文件信息
- 5.統一調度
- 6.命令行交互等過程
- 最終實現命令行下文件搜索功能.
項目編碼
使用操作
-
命令
-
搜索
項目測試
-
機器信息
處理器:英特爾 Core i5-7200U
內存:4GB
磁盤:240GB/固態硬盤 -
軟件信息
H2嵌入式文件存儲,版本:1.4.197 -
測試數據
文件系統總數:345762 -
索引效率