基于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()方法中,在规定时间内监听一次。

四、运行结果示例

在这里插入图片描述

在这里插入图片描述

五、源码

github链接:https://github.com/Chole1998/everything_g2.git

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值