今天尝试用c3p0数据库连接池访问mysql数据库,却一直显示Connections could not be acquired from the underlying database!
1.起先检查了好几遍配置信息,确定不会出错
2.又去查看了一遍数据库的当前连接数量,并没有超过最大可连接数,所以也没问题
3.在idea上重新运行了一个不使用c3p0的程序,发现可以成功连接,那么问题就出现在了c3p0上了,
4.在导入c3p0jar包之外,尝试导入了他的一个依赖包mchange-commons-java-0.2.3.4.jar,结果依然没有用
5.网上查阅资料发现有可能是c3p0和我的mysql-connector-java.jar包匹配有问题,所以我将mysql-connector-java.jar包换成了8.0.17的版本.(我的c3p0是0.9.1.2),并在xml中将配置信息改为
<property name=\"driverClass\" value=\"com.mysql.cj.jdbc.Driver\"></property><property name=\"jdbcUrl\" value=\"jdbc:mysql://localhost:3306/eesy?useSSL=true&serverTimezone=GMT&useUnicode=true&characterEncoding=utf8\"></property><property name=\"user\" value=\"root\"></property><property name=\"password\" value=\"zeng\"></property>
修改之后,程序运行成功