2016-05-21 73 views
0

我想連接到數據庫。早期它工作正常。但現在有些罐子已經被刪除或者我不知道的東西(紅十字會在他們身上)。但我再次下載了所有jar(mysql-connector,commons-io-2.4),但我仍然在Class.forName(「com.mysql.jdbc.Driver」)上得到了classnotfound異常; 這裏是我的代碼越來越java.lang.ClassNotFoundException:在java中的com.mysql.jdbc.Driver

package abc; 
    import java.sql.Connection; 
    import java.sql.DriverManager; 
    import java.sql.PreparedStatement; 
    import java.sql.ResultSet; 
    import java.sql.SQLException; 
    import java.sql.Statement; 

    public class JDBC_oracle { 
    public static void main(String[] args) throws ClassNotFoundException, SQLException { 
    //step1 load the driver class 
    Class.forName("com.mysql.jdbc.Driver"); 
    //step2 create the connection object 
    Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/database_name","user_name", "pswrd"); 
    //step3 create the statement object 
    Statement statement = connection.createStatement(); 
    statement.executeUpdate("sql_query"); 
    ResultSet rs=statement.executeQuery("sql_query");  
    while(rs.next()) 
     System.out.println("I am triyng to print data"); 
//step5 close the connection object 
    connection.close(); 
} 
    } 

這是錯誤

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Unknown Source) 
at deiniteguide.JDBC_example.main(JDBC_example.java:24) 

我一直在使用嘗試捕捉也是它不是爲我工作嘗試。

+1

mysql-connector.jar文件不在類路徑中。無關,但'Class.forName()'不再需要了。只要它們在類路徑上,JDBC驅動程序就會自動註冊。 – Andreas

回答

1

如果您使用netbeans,則可以轉到項目中的庫文件夾。右鍵單擊並添加庫,然後選擇mysql驅動程序。抱歉,由於名譽較低,無法發表評論,如果您可以發佈您收到的錯誤消息,則會更容易。也可以在程序中使用try catch,以便更容易找到錯誤。您的代碼可以是這樣的:

public class JDBC_oracle { 
    public static void main(String[] args) throws ClassNotFoundException, SQLException { 
    //step1 load the driver class 
    try{ 
    Class.forName("com.mysql.jdbc.Driver"); 
     }catch(Exception e){ 
     System.out.println("Class not found" +e); 
    //step2 create the connection object 
    try{ 
    Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/database_name","user_name", "pswrd"); 
    }catch(Exception es){ 
    System.out.println("connection couldn't be made "+es); 
     } 
    //step3 create the statement object 
    try{ 
    Statement statement = connection.createStatement(); 
    statement.executeUpdate("sql_query"); 
    ResultSet rs=statement.executeQuery("sql_query"); } 
    catch(Exception er){ 
     System.out.println("Query wasnot executed "+er);  
    } 
    while(rs.next()) 
     System.out.println("I am triyng to print data"); 
//step5 close the connection object 
    connection.close(); 
} 
    } 
+0

我在我的問題中添加錯誤,請看看謝謝。 – monil

+0

你使用netbeans嗎?或日食?這也將有助於爲您的ide項目設置MySql驅動程序 –