天天看點

JDBC 連接配接資料庫執行個體(Oracle\SQLServer\MySQL 驅動下載下傳)

    用JDBC來連接配接資料庫,基本步驟都大同小異,隻不過不同的資料庫之間的URL有些不同。其基本步驟可分為以下幾點:

1、加載相應資料庫的JDBC驅動程式。

2、利用驅動管理器DriverManager獲得連接配接Connection。

3、通過連接配接對象Connection獲得Statement對象,以便于執行SQL語句。

4、結果以ResultSet類型傳回,通過while循環周遊ResutlSet結果,直到ResultSet.next()為空時結束循環。

5、關閉Statement和Connection。

以下為執行個體Demo:

MySQL:

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

public class MySQLDemo {
 private Connection conn = null;
 private Statement stmt = null;
 private ResultSet rs = null;
 private String driverclass="com.mysql.jdbc.Driver";
 private String url="jdbc:mysql://localhost:3306/mydb";
 private String user="root";
 private String password="password";
 public SQLServerTest() {

  try {
   Class.forName(driverclass).newInstance();    //加載驅動程式
  } catch (InstantiationException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IllegalAccessException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (ClassNotFoundException e1) {
   // TODO Auto-generated catch block
   System.out.println("class not found");
  }
  try {
   conn = DriverManager.getConnection(url, user, password); //獲得Connection對象
  } catch (Exception e) {
   System.out.println("Connect failed!");
  }
 }

 public void selectMethod(String sql) {
  System.out.println("id title");
  try {
   stmt = conn.createStatement(); 	//獲得Statement對象
   rs = stmt.executeQuery(sql);	//執行SQL語句,并傳回ResultSet類型的結果
   while (rs.next()) {
    String title = rs.getString("id");
    String name = rs.getString("name");
    System.out.println(title+" "+name);
   }
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }

 public void closeDB() throws SQLException {
  if (rs != null)
   rs.close();
  if (stmt != null)
   stmt.close();			//關閉Statement對象
  if (conn != null)			//關閉Connection對象
   conn.close();
 }

 public static void main(String args[]) {
  MySQLDemo demo = new MySQLDemo();
  demo.selectMethod("select * from test");
 }
}
           

Oracle和SQLServer的Demo程式與MySQL的類似,隻是參數URL格式和Driver的名稱不同,如下所示:

Oracle的URL格式和Dirver名稱:

url="jdbc:oracle:thin:@127.0.0.1:1521:mydb";	//orcl為Oracle的執行個體名稱
driverclass= "oracle.jdbc.driver.OracleDriver";   
           

SQLServer的URL格式和Driver名稱:

driverclass= "com.microsoft.sqlserver.jdbc.SQLServerDriver";
url = "jdbc:sqlserver://localhost:1433;databasename=mydb";
           

     在URL中localhost即表示本地,也可以用127.0.0.1表示本地,localhost後面的數字表示資料庫服務的端口,每個資料庫都有本身預設的端口,如無特殊需要,在安裝資料庫軟體的時候采用預設即可。在開發資料庫應用時,與資料庫相應的JDBC驅動程式是必須的。本文中所用的三個驅動程式可在網站上搜尋下載下傳,下載下傳的時候注意選擇版本。在運作程式的時候,一定要保證相應的資料庫服務已經啟動,否則程式無法連接配接資料庫,會抛出Exception的。