仿everything的文件搜索工具项目详解:Part3

发布于:2023-01-04 ⋅ 阅读:(171) ⋅ 点赞:(0)

目录

数据流向

1.创建数据库单例,创建数据表

2. 通过选择的目录,将文件信息保存到数据库

 3.由Controller寻找文件信息,并显示给用户

 4.如果扫描过程中用户再次选择目录

测试

关于改进


数据流向

我们把整个扫描过程分为几个部分来说

1.创建数据库单例,创建数据表

此部分的流向如图所示 

2. 通过选择的目录,将文件信息保存到数据库

ps:在FileScanner中的递归过程,是此项目中时间和空间占比最大的方法,也是该项目的核心方法,当递归过程结束,子线程计数会减为0,此时便会唤醒主方法(Main或者也可以说是Controller)继续下一步

 3.由Controller寻找文件信息,并显示给用户

 

 4.如果扫描过程中用户再次选择目录

这样会中断当前搜索过程并开启下一次搜索,我们采用在Controller利用线程的方式,达到中断任务和重启任务的效果。


测试

这里就不上图了,大概可以从以下几个功能测试入手:

1.选择目录并扫描,是否正确显示路径下所有文件。

2.选择目录并扫描,不要关闭程序,删除选择文件夹下的某个文件,再次进行扫描,观察信息是否会更新。

3.选择目录并扫描。不要关闭程序,更改选择文件夹下的某个文件,再次进行扫描,观察文件信息是否会更新。

4.选择目录并扫描,显示文件信息后,在用户搜索框中输入文件名部分文字进行查询。

5.选择目录并扫描,显示文件信息后,在用户搜索框中输入文件名部分拼音进行查询。

6.选择目录并扫描,显示文件信息后,在用户搜索框中输入文件名部分首字母进行查询。

7.选择目录并扫描,选择文件较多的文件夹,观察扫描时间是否迅速。


关于改进

该项目可以进行改进,目前仍有不足之处,可以从如下方面进行改进:

1.从线上进行扫描,无需进入本地

2.不仅可以搜索,甚至可以打开显示信息的文件夹或者文件

3.显示文件图标

我的下一步方向:

希望可以上线线上,让用户在线搜索文件,并且利用JavaFx加入文件图标

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到