常见问题与解决

如何运行项目

问题描述:不知道如何运行开发好的项目。

解决方法:系统的入口类(启动类)为 com.mr.clock.main.Main.java,在 Main.java 文件上右击,在弹出的快捷菜单中依次选择 Run As→Java Application 命令,即可启动项目,操作过程如图24.26所示。

image 2024 03 07 09 43 49 792
Figure 1. 图24.26 在Main.java文件上右击运行项目

无法激活人脸识别引擎

问题描述1:运行项目后会在控制台提示 “ERROR: ArcFace引擎激活失败,请检查授权码是否填写错误,或重新联网激活。”

解决方法:没有在 com.mr.clock.config.ArcFace.properties 配置文件中填写正确的激活码,请登录虹软科技的开发者中心,然后重新复制激活码。具体相关操作可以参考源码资源包中附赠的 “项目部署说明” 文档。

问题描述2:运行项目后会在控制台提示 “ERROR:ArcFace引擎初始化失败”。

解决方法1:让计算机连接网络,虹软科技的人脸识别 SDK 即可自动联网激活。

解决方法2:即使联网也会出现初始化失败的错误,可能是 com.mr.clock.config.ArcFace.properties 配置文件中填写的激活码有误,请登录虹软科技的开发者中心重新复制激活码。

无法连接MySQL数据库

问题描述:系统运行后会抛出数据库相关异常,且无法正常读取数据库中的数据。

解决方法:检查 com.mr.clock.config.jdbc.properties 数据库连接配置文件,查看相关设置是否与计算机本地安装的数据库属性一致。需要检查的内容包括数据库账号、数据库密码、数据库IP、数据库端口和连接的数据库名称,相关属性位置如图24.27所示。

image 2024 03 07 09 45 23 803
Figure 2. 图24.27 jdbc.properties配置文件中数据库属性的所在位置

如何切换成SQLite数据库

问题描述:我的计算机没有安装 MySQL 数据库或者安装失败,但看到项目中有 SQLite 数据库的相关文件,做哪些操作可以让项目从 MySQL 数据库切换到 SQLite 数据库?

解决方法:修改 com.mr.clock.config.jdbc.properties 数据库连接配置文件,将所有关于 MySQL 的配置注释掉,打开 SQLite 的默认配置,效果如图24.28所示。

image 2024 03 07 09 46 25 091
Figure 3. 图24.28 修改com.mr.clock.config.jdbc.properties配置文件

修改 com.mr.clock.dao.DAOFactory.java 文件中的代码,将返回的数据库接口改为由 SQLite 的实现类创建,效果如图24.29所示。修改完毕后,重启项目,项目就改用 SQLite 数据库了。

image 2024 03 07 09 47 05 510
Figure 4. 图24.29 修改com.mr.clock.dao.DAOFactory.java工厂类

如果想要还原 SQLite 数据库中的原始数据,只需将资源包中的 \DB_Sqlite\time_attendance.db 文件覆盖到项目根目录下的 DB_Sqlite\time_attendance.db 文件中即可。