日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java c3p0 配置文件_关于最近一直纠缠我的c3p0-config.xml配置文件找不到的问题终于解决了,\(^o^)/...

發布時間:2024/10/14 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java c3p0 配置文件_关于最近一直纠缠我的c3p0-config.xml配置文件找不到的问题终于解决了,\(^o^)/... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

從一開始看官方的文檔中的說明,關于配置c3p0連接池,如果要使用xml來配置,需要將xml文件放在classpath的路徑下。所以我就放好了

結果運行后,等待了很久,最后得到一堆紅色的讓人崩潰的error

心態瞬間崩了,喝了一口 雪碧纖維+ (這不是廣告-_-)冷靜一下,經過數分鐘的搜索,網上的過來人告訴我可能是mysql的驅動版本不匹配,或者需要把這些jar包都扔到jre的lib下的ext文件夾里面,于是我更換了最新的mysql-connector-java-6.0.6,結果依然不行。

這時我突然觀察到c3p0的日志輸出中赫然寫著:jdbcUrl=null,怎么回事,我明明配置了url啊,怎么會這樣,明明官網說了只需要通過

DataSource ds = new ComboPooledDataSource();

這么一行代碼就會自動加載配置文件的呢,于是我不信邪,下載了源碼,經過調試,找到了加載配置文件的地方,

就是通過調用 類C3P0ConfigXmlUtils中的extractXmlConfigFromDefaultResource方法來獲取xml文件,原理很簡單,依然是通過T.class.getClassLoader().getResourceAsStream("path")來獲取classpath路徑下的資源文件的,我又發現這個類的xml文件路徑居然是加了/的,按道理說使用classloader是無法識別的呢,于是又發現了源碼中getResourceAsStream里面早就封裝好了去掉頭部的/的方法。

一切都是那么的合理,難道我是個傻子嗎???我不禁發出疑問,想到難道是操作系統影響,于是換了一臺windows10的系統試了一次,居然真的沒問題,我去。難道我找到了大佬的bug,不不不,經過自我鑒定與審視,這是不可能的。

突然間,我又赫然發現,日志中的打印的c3p0版本居然還是0.9.1.2,我明明已經換成了0.9.5.2的jar包,為什么,想到難道是IED有緩存???

于是又動手在lib附近通過命令行創建一個touch TestDemo.java文件,再一次嘗試,javac TestDemo.java,咦?居然不需要指定jar嗎,再一次又打印出了0.9.1.2的版本信息,我屮艸芔茻

就在這時一個巨大的靈感打中了我,難道是jre中的classpath影響了我的發揮,此時程序加載的路徑就會是jre中的路徑了,我去把所有其他地方的jar包統統刪除后,再一次編譯,終于終于,成功了,終于找到了c3p0-config.xml所以說jar包的加載順序真的很重要啊,同志們,一點點的疏忽就這么斷送了我的一天,希望以后這種問題不要再出現了,心里舒了一口氣,感激!!!

總結

以上是生活随笔為你收集整理的java c3p0 配置文件_关于最近一直纠缠我的c3p0-config.xml配置文件找不到的问题终于解决了,\(^o^)/...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。