慕碼人2483693
2020-02-01 17:21:23
我有一個(gè)Java類,該類通過在Tomcat上運(yùn)行的JSP中使用的JDBC通過JDBC訪問MySQL數(shù)據(jù)庫(kù),并且遇到“未找到驅(qū)動(dòng)程序異?!钡膯栴}。唯一重要的錯(cuò)誤是一個(gè),makeStatement()因?yàn)槭?huì)導(dǎo)致所有其他錯(cuò)誤。我已四重檢查我的WEB-INF / lib目錄中是否具有正確的jar文件,并且重新啟動(dòng)Tomcat的次數(shù)比我想要的要多。我有一個(gè)makeStatement()在不同的.java文件中使用的單獨(dú)的webapp,該webapp運(yùn)行良好。甚至更奇怪的是,我在.java中有這個(gè):static { System.err.println("\n\nTEST MYSQL ACCESS: dump all relevant tables:"); dump(); System.err.println("END OF MYSQL ACCESS ACCESS.");} public static void dump() { try { readUsers(); for (UserRecord u: users) System.err.println(u.username+" "+u.password); } catch (Exception e) {System.err.println(e);} }使用readUsers()讀取數(shù)據(jù)庫(kù)中所有用戶的位置makeStatement()。這實(shí)際上可以正常工作,并且將打印數(shù)據(jù)庫(kù)中的所有用戶(出于明顯的原因,此處未顯示:)),然后發(fā)生驅(qū)動(dòng)程序未找到錯(cuò)誤。
3 回答

慕娘9325324
TA貢獻(xiàn)1783條經(jīng)驗(yàn) 獲得超4個(gè)贊
java.sql.SQLException:找不到合適的驅(qū)動(dòng)程序
此異??赡苡?個(gè)原因:
完全不加載JDBC驅(qū)動(dòng)程序。
URL與任何已加載的JDBC驅(qū)動(dòng)程序都不匹配。
由于驅(qū)動(dòng)程序似乎已加載(盡管方式不正確),因此該URL顯然是錯(cuò)誤的。確保url變量的值與以下格式匹配
jdbc:mysql://localhost:3306/dbname
也可以看看:
將Java連接到MySQL數(shù)據(jù)庫(kù)
與具體問題無關(guān):Java代碼不屬于JSP文件。也要努力。您的異常處理也很糟糕,您應(yīng)該拋出異常(以使其阻止執(zhí)行代碼的剩余部分),而不是打印消息/跟蹤,然后繼續(xù)執(zhí)行代碼。

阿波羅的戰(zhàn)車
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊
您是否已向駕駛員注冊(cè)課程?例如:
Class.forName("net.sourceforge.jtds.jdbc.Driver");
添加回答
舉報(bào)
0/150
提交
取消