1、什麼是JDBC
JDBC的全稱是Java DataBase Connectivity,也就是Java數據庫連接,其主要作用概括起 來有如下3個方面:
- 建立與數據庫的連接。
- 向數據庫發起查詢請求。
- 處理數據庫返回結果。
2、JDBC中常用接口與類
2.1DriverManager類
處理驅動程序的加載和建立新數據庫連接
2.2Connection接口
處理與特定數據庫的連接
2.3Statement接口
在指定連接中處理SQL語句
2.4PreparedStatement接口
預處理方式執行sql語句
2.5ResultSet接口
處理數據庫操作結果集
3、連接數據庫的步驟(七步)
3.1加載JDBC驅動程序
Class.forName("oracle.jdbc.driver.OracleDriver");
3.2提供JDBC連接的URL
String url = "jdbc:oracle:thin:@localhost:1521:orcl"; //獲取連接URL
3.3建立連接(connection)
Connection con = DriverManager.getConnection(url, user, password); //獲取數據庫連接
3.4創建執行sql的語句(三種方式)
執行靜態SQL語句,通常通過Statement實例實現
Statement stmt = con.createStatement() ;
執行動態SQL語句,通常通過PreparedStatement實例實現
PreparedStatement pstmt = con.prepareStatement(sql) ;
執行數據庫存儲過程,通常通過CallableStatement實例實現
CallableStatement cstmt = con.prepareCall("{CALL demoSp(? , ?)}") ;
3.5執行語句
executeQuery:執行查詢數據庫的SQL語句,返回一個結果集(ResultSet)對象
executeUpdate:執行INSERT、DELETE、UPDATE 返回受影響行數
execute:執行返回多個結果集、多個更新計數或二者組合的語句
3.6處理結果
執行更新返回的是本次操作影響到的記錄數
執行查詢返回的結果是一個ResultSet對象
示例:
while(rs.next()){
String name = rs.getString("name") ; //根據“字段名”獲取數據
String pass = rs.getString(1) ; // 根據“下標”獲取數據(列從左到右編號,並且從列1開始)
}
3.7釋放資源
操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲明順序相反:
- 關閉記錄集()
- 關閉聲明
- 關閉連接對象