问题描述
当我尝试连接到 MysqL (8.0.23) 数据库时,总是收到“没有合适的驱动程序”错误。我在 Springboot (2.4.3) 应用程序的 application.yml
文件中指定了 JDBC 驱动程序:https://github.com/aliensnoopy/crm/blob/6cd02d8042cf3aac275e39d642aec8dcaa9c85fb/src/main/resources/application.yml#L12
我可以验证我的本地 MysqL 服务器是否已启动并正在运行,并且我的密码是否正确,因为我可以从终端连接到数据库。
然而,在我将 springboot 版本从 2.4.3
更改为 2.2.2 RELEASE
后,一切都神奇地工作了!这两个 Springboot 版本之间肯定有一些细微的差异导致这种情况发生,但我还想不通。
我设置了一些断点来尝试调试为什么它在 SpringBoot 2.4.3 中不起作用,我发现当服务器启动时,user
和 password
无法正确读取,因此它们都是 null
,如屏幕截图所示:
所以,我猜我在 application.yml
中指定的数据源信息可能无法在 SpringBoot 2.4.3
中正确读取。 SpringBoot 2.4.3
和 SpringBoot 2.2.2 RELEASE
在读取 application.yml
文件或初始化数据库连接方面有什么区别吗?
解决方法
您是否已将 MySQL 连接器作为依赖项添加到您的启动 Maven 或 Gradel 文件中?