今天遇到一個(gè)很常見但是困擾了我好幾個(gè)小時(shí)的簡單問題骆莹!
問題描述:
在做Java web開發(fā)鏈接數(shù)據(jù)庫的候經(jīng)常報(bào)ClassNotFoundException: com.mysql.jdbc.Driver(找不到j(luò)dbc的異常)jdbc-connector.jar 導(dǎo)入了、數(shù)據(jù)庫鏈接字符串沒問題寨蹋、項(xiàng)目也重新部署了、服務(wù)器也重啟過......它還是報(bào)這個(gè)錯(cuò)誤扔茅。
解決思路:
于是試著將數(shù)據(jù)庫鏈接的部分抽出來以Java application的方式運(yùn)行并沒有報(bào)錯(cuò)R丫伞!召娜!那就說明這個(gè)問題出現(xiàn)在服務(wù)器端运褪!于是我到tomcat的lib下去找果然沒有發(fā)現(xiàn)jdbc-connector.jar,接下來將jdbc-connector.jar放進(jìn)去重啟tomcat就沒有報(bào)錯(cuò)了玖瘸!后來想了一下上面的處理不夠好秸讹,我們知道sun規(guī)定web應(yīng)用有自己的固定的目錄結(jié)構(gòu),在WEB-INF下面有一個(gè)lib文件夾雅倒,里面存放該項(xiàng)目用到的庫文件璃诀,如果我們將jdbc-connector.jar放在Tomcat里面會(huì)使Tomcat變得臃腫,其他項(xiàng)目可能并不會(huì)用到j(luò)dbc-connector.jar這個(gè)庫文件蔑匣,所以如果只針對的是本項(xiàng)目就應(yīng)該將其放在WEB-INF下面的lib文件夾里劣欢,當(dāng)使用到這個(gè)庫文件的時(shí)候棕诵,會(huì)自動(dòng)到該目錄下尋找。
總結(jié):
要明白整個(gè)項(xiàng)目啟動(dòng)的順序氧秘,各個(gè)工具的作用年鸳,用排除法定位錯(cuò)誤源,然后解決問題