基於Java語言開發的仿Everything命令行文件搜索工具

一、項目簡介

仿照Everything桌面工具,基於Java語言開發的命令行文件搜索工具,用於在Windows命令行下查詢一些文件,基於Java語言開發的工具可以在Windows平臺和Linux平臺上無差異使用。本項目使用IDEA和Maven工具開發,主要用到了Java文件操作、嵌入式H2數據庫、JDBC、Lombok庫、Java多線程和文件監控系統。

二、Everything功能實現分層結構圖

在這裏插入圖片描述

三、功能具體實現

1.模型

文件類型(FileType 比如:img -> png jpeg jpg bmp gif bmp … )
 檢索條件(Condition name filetype limit order … )
 Thing (name, path ,depth , filetype)

2.數據庫

本地系統中的文件或者文件夾 ->Java File -> Java Thing -> 數據庫中的記錄Table
 數據庫創建(everything_g2)
 數據庫表的設計:
在這裏插入圖片描述
 JDBC -> 數據庫的驅動,數據庫連接池(Druid)

3.Lombok

第一步:在maven的配置中引入Lombok庫
 第二步:在IDEA中安裝Lombok Plugin
 第三步:在IDEA中啓用註解處理器

4.index索引

由後臺線程執行,在構建索引時用戶依然可以執行其他命令。
在這裏插入圖片描述

5.檢索search

用戶輸入search 文件名稱 文件類型名稱,打印符合用戶輸入的檢索路徑。
在這裏插入圖片描述

6.文件監控系統

只監控指定目錄,不常用系統下的目錄不監控。主要使用以下類的方法:
 FileAlterationListenerAdaptor
 FileAlterationMonitor
 FileAlterationObserver
 把要監控的path傳入到monitor()方法中,在規定時間內監聽一次。

四、運行結果示例

在這裏插入圖片描述

五、源碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章