2013-11-28 112 views
0

所以這是我的事。我正試圖連接從Java的MySQL數據庫。我已經從MySQL下載連接器驅動程序(其名稱爲「mysql-connector-java-5.0.8-bin.jar」),並將其添加到我的庫中(使用NetBeans的Im)。我試圖做這樣的簡單連接:從IDE連接到MySQL數據庫Netbeans

package datacon; 

public class Datacon { 

    public static void main(String[] args) { 

     try { 

      java.sql.Connection con = (java.sql.Connection) java.sql.DriverManager 
       .getConnection("jdbc:mysql://localhost:3306/test" 
       /*, "root" 
        , "root" */); 

     } catch (Exception e) { 
      System.out.println(e.toString()); 
     } 
    } 
} 

但這hapened:

java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/test 

我做我的研究網絡,這很常見的事,但沒有一個答案幫助了我。我能夠通過NetBeans /服務連接到數據庫,因此URL jdbc:mysql:// localhost:3306/test應該是正確的。

我使用:

java: Oracle java SDK 1.7.0 _ 45 
IDE: NetBeans 7.4 
OS:  Debian 3.2.51-1 x86_64 
Driver: MySQL Connector/J 5.0.8 

這恐怕是要去有一個很瑣碎的答案,但我現在困在這裏了一段時間,我需要移動。那麼我錯過了什麼?

回答

1

地址:

static { 
    try { 
     Class.forName("com.mysql.jdbc.Driver"); 
    } catch (final ClassNotFoundException e) { 
     e.printStackTrace(); 
    } 
} 
+1

靜態不需要。作爲解釋:驅動程序類以這種方式加載,因此不需要導入特定的數據庫提供程序,也不能使用特定的提供程序功能擴展API。 –

+0

我很驚訝。我做了工作,現在我需要研究爲什麼。謝謝! – Addman

1

我的事情你忘了加載驅動程序。

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

並確保您的課程路徑中有mysql-connector-java-5.1.22-bin

0
try { 
     Class.forName("org.gjt.mm.mysql.Driver"); 
     Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root"); 
    } catch(ClassNotFoundException e) { 
     e.printStackTrace(); 
    } 
0

嘗試{ 的Class.forName( 「com.mysql.jdbc.Driver」);

 driver.getconnection("connenctionurl","name","password"); 

      Statement s =goodrecive.asif().createStatement(); 
      s.executeUpdate("INSERT INTO product(productno,productname,quantity,ammount)values('"+t1.getText()+"','"+t2.getText()+"','"+t3.getText()+"','"+t4.getText()+"')"); 

    } catch (Exception e) { 
     System.out.println(e); 
    } 
}       
0

我的連接類:

package connection; 

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 

public class ConnectionFactory { 
    public Connection getConnection() throws SQLException { 
     return DriverManager.getConnection("jdbc:mysql://localhost:3306/<database>", "<user>", "<password>"); 
    }   
} 

不需要添加的classforname。在老版本的java中這是必需的。