2014-02-05 32 views
2

作爲我的項目的一部分,我試圖將其與數據庫連接。我在谷歌搜索的代碼,我得到了下面的代碼。在這我不明白2件事 - 「import com.mysql.jdbc.Driver;」和「新驅動程序」。這兩個意思是什麼?什麼是導入com.mysql.jdbc.Driver;

package javasql; 

import com.mysql.jdbc.Driver; 
import java.sql.*; 

public class Connect { 
public Connect() throws SQLException{ 
    makeConnection(); 
} 

private Connection koneksi; 

public Connection makeConnection() throws SQLException { 
    if (koneksi == null) { 
     new Driver(); 
     // buat koneksi 
     koneksi = DriverManager.getConnection(
        "jdbc:mysql://localhost:3306/mysql","root","virus"); 
    } 
    return koneksi; 
} 

public static void main(String args[]) { 
    try { 
     Connect c = new Connect(); 
     System.out.println("Connection established"); 
    } 
    catch (SQLException e) { 
     e.printStackTrace(); 
     System.err.println("Connection Failure"); 
    } 

} 
} 

package javasql; 

import java.sql.*; 

public class SqlStatement { 
private Statement statement; 
public SqlStatement() throws SQLException{ 
    makeStatement(); 
} 
public Statement makeStatement() throws SQLException{ 
    Connect c = new Connect(); 
    Connection conn = c.makeConnection(); 
    statement = conn.createStatement(); 
    return statement; 
} 
public void insert(String name,int npm)throws SQLException{ 
    statement.execute("insert into Student values(\""+name+"\","+npm+");"); 
} 
public static void main(String arg[]){ 
    try { 
     SqlStatement s = new SqlStatement(); 
     s.insert("Ferdi2",3); 
     s.insert("Anca2",3); 
     System.out.println("Success"); 
    } 
    catch(SQLException e){ 
     System.out.println("Failed"); 
     e.printStackTrace(); 
    } 
} 
} 

我使用NetBeans IDE開發我的項目。當我使用這些代碼時,我將它作爲一個新項目。然後它運行良好。但是,無論何時我試圖將這些代碼包含在另一個項目中,「import com.mysql.jdbc.Driver;」中都會顯示錯誤。爲什麼這樣?我可以在其他項目中使用這兩個代碼嗎?

+1

您必須包含一個驅動程序庫才能夠與數據庫管理系統進行交互。 'import com.mysql.jdbc.Driver'是yoyu必須在你的類路徑中使用的mysql驅動程序的類。 http://dev.mysql.com/downloads/connector/j/ – dooxe

+0

您需要在項目中包含MYSQL java庫。 import語句告訴編譯器,你正在使用'com.mysql.jdbc'包中的'Driver'類。 – initramfs

+0

謝謝......當我在NetBeans中添加MySQL JDBC驅動程序時,問題就解決了。 – TomJ

回答

2

驅動程序充當您的應用程序和數據庫之間的接口。

你使用MySQL嗎?如果是這樣,你可以找到MySQL的Java驅動程序here.

+1

謝謝。這是我的問題。 – TomJ

0

JDBC代碼中使用import com.mysql.jdbc.Driver;是不是一個好的做法 ,你需要導入只java.sql.*javax.sql.*。原因是將代碼從特定的驅動程序實現中分離出來。

有關如何建立JDBC連接的更多信息,請參閱here。並且DriverManager.getConnection(...)就足以獲得連接。

0

所有你需要的是

//這將加載MySQL驅動,每個數據庫都有自己的驅動程序 Class.forName("com.mysql.jdbc.Driver")

這就像類加載器並加載驅動程序類爲您服務。爲此你需要添加相應的jar文件。