標籤:
JDBC
----JDBC(Java DataBase Connectivity)是Java與資料庫的介面規範,JDBC定義了一個支援標準SQL功能的通用低層的API(API),它由Java 語言編寫的類和介面組成,旨在讓各資料庫開發商為Java程式員提供標準的資料庫API。 JDBC API定義了若干Java中的類,表示資料庫連接、SQL指令、結果集、資料庫中繼資料等。它允許Java程式員發送SQL指令並處理結果。通過驅動程式管理器,JDBC API可利用不同的驅動程式串連不同的資料庫系統。
個人理解就是通過JDBC載入不同的資料庫驅動來串連相應的資料庫,以下是百度百科的圖用來協助理解。
用JDBC來串連資料庫主要用以下的類和介面:
DriveManage類 驅動程式管理類,用來裝載驅動程式
Connection介面 連結資料庫
Statement介面 執行sql語句擷取查詢結果
PreparedStatement介面 執行先行編譯的sql語句(Statement子介面)
ResultSet 介面 提供對結果集處理的方法
首先要下載相應的JDBC for mysql:http://www.mysql.com/products/connector/
我是用的eclipse,首先匯入剛才下載解壓得到的包(mysql-connector-java-5.0.8-bin.jar),
1 public class MysqlDemo { 2 3 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; //定義驅動路徑 4 public static void main(String[] args) { 5 // TODO Auto-generated method stub 6 try{ 7 Class.forName(DBDRIVER); //載入驅動 8 }catch(ClassNotFoundException e){ 9 e.printStackTrace();10 }11 12 }13 14 }
如果以上代碼你能正常運行那麼就說明驅動正常載入了。如果沒有載入成功,可以看一下導包,驅動路徑是否正確。
之前也見過說是com.路徑下的其實最簡單的辦法就是用解壓軟體開啟自己找一下Driver類。
載入好驅動接下來就是串連資料庫,通過DriverManager的getConnection(String url, String user, String password)
來擷取Conneion執行個體,串連。
1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.SQLException; 4 5 public class MysqlDemo { 6 7 public static final String DBDRIVER = "org.gjt.mm.mysql.Driver"; //驅動路徑 8 public static final String DBURL = "jdbc:mysql://localhost:3306/demo";//資料庫路徑 9 public static final String USER = "root";//使用者名稱10 public static final String PASSWD = "changeme";//密碼11 public static void main(String[] args) {12 // TODO Auto-generated method stub13 Connection con = null; //資料庫連接介面14 try{15 Class.forName(DBDRIVER); //載入驅動16 }catch(ClassNotFoundException e){17 e.printStackTrace();18 }19 try{20 con = DriverManager.getConnection(DBURL,USER,PASSWD);//串連資料庫21 }catch(SQLException e){22 e.printStackTrace();23 }24 System.out.println(con); //如果串連成功就會有輸出,否則拋出異常25 try{26 con.close(); //關閉資料庫27 }catch(SQLException e){28 e.printStackTrace();29 }30 31 32 }33 34 }
資料庫正常串連輸出類似以下的資料庫連接資訊
[email protected]
一、JAVA通過JDBC串連mysql資料庫(串連)