今天学习了JDBC连接数据库,在配置文件中出现了问题,后台给我报的错误是
java.sql.SQLException: Connections could not be acquired from the underlying
上网百度一下,大佬给的三个原因又:
- 驱动配置有误 (看看mysql版本,高版本的驱动不一样)
- 数据库连接地址有误 ur后面一般带上 ?3useUnicode=true&characterEncoding=utf8(jar包版本不同,加的也不一样)
- 密码或帐号有误
一一排除发现我的mysql版本是8.0.21的,jar驱动是老版本的,于是换了新版本的驱动,然后ur路径也重新设置了一下,新版本的是
?&useSSL=false&serverTimezone=UTC
还是报错,于是继续百度,然后一位大佬说:
在 c3p0.xml 文件中对于 ‘&’ 需要转义成 ‘&;’!
于是我又将ur改为了
jdbc:mysql://localhost:3306/test?&useSSL=false&serverTimezone=UTC
test是数据库名,然后运行成功。需要注意的是driver驱动为
com.mysql.cj.jdbc.Driver
这个也是我这次报错原因之一。