2013-12-11 182 views
0

當我嘗試編譯無法連接到我的數據庫

ConnectDB.java:14: error: unreported exception ClassNotFoundException; must be caught or declared to be thrown 
Class.forName("com.mysql.jdbc.Driver"); 

import java.sql.*; 
import java.sql.Connection; 
import java.sql.DriverManager; 

public class ConnectDB 
{ 
    public ConnectDB() throws SQLException 
    { 
     Class.forName("com.mysql.jdbc.Driver"); 
     Connection dbConnect = DriverManager.getConnection("jdbc:mysql://xx.xx.xxx.xxx:3306/my_DB", "userName", "superSecurePassword"); 
    } 
} 

我已經下載並安裝驅動程序,並設置類路徑,但繼續得到錯誤,我得到這個錯誤。

回答

4

這是因爲編譯器告訴你,你沒有捕獲檢查的異常。您需要適當的處理:

try { 
    Class.forName("com.mysql.jdbc.Driver"); 
} catch(ClassNotFoundException e) { 
    // log exception, probably abort application if it can't run without a database 
} 
1

您需要將下面的代碼

Class.forName("com.mysql.jdbc.Driver") 

一個try catch塊內。因爲代碼拋出 * 檢查異常 *和編譯器強制爲catch檢查異常