最近在學習JDBC編程,編寫如下代碼,編譯時卻報錯:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
1.public class Test1
2.{
3. public static void main(String[] args) throws Exception
4. {
5. //1.加載驅動,使用反射知識
6. Class.forName("com.mysql.jdbc.Driver");
7. try
8. {
9. //2.使用DriverManager獲取數據庫連接,其中返回的Connection就代表了Java程序和數據庫的連接
10. //不同數據庫的URL寫法需要查看驅動文檔,用戶名、密碼由DBA分配
11. Connection conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/database2","root","123");
12. //3.使用Connection來創建一個Statement對象
13. Statement stmt=conn.createStatement();
14. //4.執行SQL語句
15. //Statement有三種執行SQL語句的方法
16. ResultSet rs=stmt.executeQuery("select teacher_name "+"from teacher "+"where teacher_id>1");
17. while(rs.next())
18. {
19. System.out.println(rs.getString(1));
20. }
21. }
22. catch(Exception e)
23. {
24. e.printStackTrace();
25. }
26. }
27.}
後來查了相關資料發現是沒有引入mysql-connector-java-x.x.x-bin.jar的問題。下面是具體的解決方案:
- 下載mysql-connector-java-x.x.x-bin.jar,目前最新版爲mysql-connector-java-5.1.22-bin.jar。(http://nankaijerry.iteye.com/admin/blogs/1826921)
- 在Eclipse中,選擇 項目->屬性->Java構建路徑,在“庫”選項卡中,選擇“添加外部JAR”,找到下載的mysql-connector-java-5.1.22-bin.jar文件,將其添加進項目。
- 再次編譯,程序正常運行!(可使用上述代碼做測試)