天天看点

MySQL8.0使用c3p0-config出现named-config with name 'xxx' does not exist或者java.lang.NullPointerException

作者是在IDAE中的JAVA项目中使用MySQL8.0和C3P0连接池的,出现了

named-config with name ‘xxx’ does not exist的异常和java.lang.NullPointerException的异常。

最后成功运行

原因是c3p0-config放置的位置不对,应当把c3p0-config放在src下,不然

new ComboPooledDataSource(“configName");可能会找不到c3p0-config.xml文件

正确做法↓

MySQL8.0使用c3p0-config出现named-config with name 'xxx' does not exist或者java.lang.NullPointerException

后记

如果想了解mybatis如何连接MySQL8.0可以浏览Mybatis连接MySQL8数据库及注意事项

这篇文章本来是一篇老文章,后来被读者保剑锋从提醒了一下,现在把这个坑填上:

其实.java文件是不执行的,真正执行的是.class文件,所以应该到classpath里面去找这个配置文件才是对的。

而笔者把xml放在最外面其实就是在根目录下,所以可以直接使用文件就能找到classpath里面的xml。

PS:classpath长这样:

MySQL8.0使用c3p0-config出现named-config with name 'xxx' does not exist或者java.lang.NullPointerException

而我们开发的时候的路径是放源码的(.java文件)长这样↓

MySQL8.0使用c3p0-config出现named-config with name 'xxx' does not exist或者java.lang.NullPointerException

总结:找配置文件!到classpath里面找!配置文件找不到,到里面看看路径写对了没有!共勉!

继续阅读