windows - idea提示錯誤:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
問題描述
碰見了一個問題,一直無法解決,希望大家幫幫忙。這是連接mysql的JdbcUtils代碼:
public class JdbcUtils { // 配置文件 private static Properties props = null; // 靜態塊保證只加載一次 static {InputStream in = JdbcUtils.class.getClassLoader().getResourceAsStream('dbconfig.properties');props = new Properties();try { props.load(in);} catch (IOException e) { System.out.println('加載配置文件失敗!'); throw new RuntimeException(e);}try { Class.forName(props.getProperty('driverClassName'));} catch (ClassNotFoundException e) { System.out.println('驅動類加載失敗'); throw new RuntimeException(e);} } public static Connection getConnection() throws SQLException {return DriverManager.getConnection(props.getProperty('url'),props.getProperty('username'), props.getProperty('password')); }}
用下面的這個測試類證明jdbcutilis沒有問題,可以加載com.mysql.jdbc.Driver
public class TestJDBCUserDao { @Test public void test (){UserDao ud = UserDaoFactory.getUserDao('mysql');User user = new User();user = ud.findByName('111');System.out.println(user.getPassword()); }}
UserDao的jindByName是為了獲得數據庫連接:
項目也已經引入數據庫驅動包,如圖:
但當用tomcat跑時提示錯誤:錯誤提示,驅動類加載失敗,也就是:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver,如圖:
問題解答
回答1:如果你是直接把jar包拷貝進去的,右擊jar點擊add library,如果是jsp項目 需要拷貝到web下的lib下面。
回答2:把jar包同時也要放到tomcat的lib目錄下
相關文章:
1. javascript - react+百度地圖2. html5 - iOS的webview加載出來的H5網頁,怎么修改html標簽select的樣式字體?3. vue.js - vue+webpack+vue-router 部署到nginx服務器下,非根目錄,前后端怎樣配置文件?4. javascript - 為什么當index等于5的時候,不在當前頁面跳轉到百度?不跳轉的代碼在倒數第五行5. angular.js - 關于angular react vue 我們在什么實際的開發項目中使用?如何選擇?6. 手動啟動mysql服務出錯,1067錯誤,如何解決呢?7. index.php錯誤,求指點8. 這是什么情況???9. 請教一條mysql的sql語句寫法;10. 跟著課件一模一樣的操作使用tp6,出現了錯誤
