天天看點

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裡面找!配置檔案找不到,到裡面看看路徑寫對了沒有!共勉!

繼續閱讀