目录
一.项目背景
为什么会想起做这个项目呢?
从自己知道并开始使用 Windows 的一个文件搜索软件Everything起,发现它方便好用,而且搜索速度很快,因为它使用了 Windows 内置的一些API(文件IO 的一些API)。但它只能在 Windows 上使用,又加上自己学了Java,Java有跨平台的特性,所以就想着能否用Java写一个类似于这样的搜索软件,使它支持跨平台使用。
二.简要介绍
这个项目是仿照 Everything 的一个增强版的文件搜素软件,支持跨平台使用,但是搜索速度没有Everything 快。项目中用到的技术有,Java8,JavaFX (基于Java 语言的图形化界面工具包,JDK11就不再内置JavaFX),多线程,IO流,SQLite(嵌入式数据库,一个文件就是一个数据库)。
三.功能列表
1.选择文件夹后多线程扫描该文件夹下的子文件,展示文件的名称,大小,修改时间。
2.选择路径后,支持搜索相关文件内容(全拼,文件首字母组合,文件部分名称,即支持模糊查询。
3.文件夹扫描完毕后,显示搜索的所有文件以及文件夹的个数,总耗时。
四.相关配置
先创建一个Maven项目。
Maven是一个项目管理工具,方便进行第三方 jar 包的导入和管理,对当前项目的整个生命周期(打包,测试,发布等)进行跟踪。
pom.xml:maven项目的核心配置文件。
首先导入两个依赖:
再导入两个插件:
插件1:用来打一个可执行的 jar 包
插件2: 引入的第三方 jar 包执行 package 命令打包时,也把第三方的 jar 包打包起来,这样在执行可执行 jar 包就会找到相应的 jar
下面标注的都有就说明导入成功了!
jar 包:是一系列编译好的 class 文件,其实就是一个压缩包。可执行 jar 包指的是 jar 中指定入口类和主方法,我们就是通过这个主类和主方法将整个程序运行起来。