1:jdbc介紹

如果沒有JDBC,Java程式員需要面向各個資料庫驅動介面編程,開發復雜 ;
sun 公司提供一套統一JDBC介面規范,Java程式只需要使用JDBC就可以操作任何資料庫,JDBC實作類由各個資料庫廠商提供.
2:常用類說明
2.1:DriverManager
操作資料庫第一步是需要注冊驅動,
DriverManager類的目的: 注冊驅動和獲取連接的
Class.forName("com.mysql.jdbc.Driver"); - 代碼是固定的
需匯入驅動包
2.2:JDBC URL說明
mysql為例: 需要獲取連接資料庫的相關協議:
jdbc:mysql://localhost:3306/dbname- 操作資料庫的名字
jdbc:mysql://127.0.0.1:3306/dbname
這里 jdbc: 是JDBC連接協議
這里 mysql:// 是mysql資料庫連接協議,JDBC子協議
localhost:3306 主機和埠,
dbname 資料庫名

2.3:Connection 連接
通過驅動管理器(DriverManager)可以獲取鏈接,操作資料庫必須要先獲取鏈接
獲得SQL的操作物件
Statement conn.createStatement()
PreparedStatement conn.prepareStatement(sql)
該物件可以將SQL發送給資料庫進行執行
2.4:Statement
用于將SQL 發送給資料庫 獲得操作結果
executeUpdate 用于向資料庫發送 insert update delete 陳述句,回傳int 型別引數,代表影響記錄行數
executeQuery 用于向資料庫發送 select 陳述句,回傳ResultSet 結果集物件
execute 用于資料庫發送任何SQL陳述句
回傳boolean ,SQL執行結果是ResultSet 回傳true,否則 false
2.5:ResultSet
ResultSet 包含符合 SQL 陳述句中條件的所有行,并且它通過一套 get 方法(這些 get 方法可以訪問當前行中的不同列)提供了對這些行中資料的訪問,ResultSet.next 方法用于移動到 ResultSet 中的下一行,使下一行成為當前行,
結果集一般是一個表,其中有查詢所回傳的列標題及相應的值,
行:
ResultSet 維護指向其當前資料行的游標,每呼叫一次 next 方法,游標向下移動一行,
最初它位于第一行之前,因此第一次呼叫 next 將把游標置于第一行上,使它成為當前行,隨著每次呼叫 next 導致游標向下移動一行,按照從上至下的次序獲取ResultSet行,
列:
方法 getXXX 提供了獲取當前行中某列值的途徑,在每一行內,可按任何次序獲取列值,但為了保證可移植性,應該從左至右獲取列值,也可以通過列名來獲取值,

3:使用步驟
1:加載驅動
2:創建連接
3:連接資料庫
4:撰寫sql
5:創建執行物件
6:執行sql陳述句
7:釋放資源

動態新增資料


通過物件傳遞值

4:結果集處理
1: 資料結果集只有一條記錄一般采用:
if(rs.next()){
// 查到了資料
}else{
// 沒有查到資料
}
2: 如果是多條記錄采用回圈遍歷
while(rs.next()){
// 根據資料庫內部 列型別,選擇相應 getXXX方法
int ---- getInt()
varchar ---- getString()
date ----- getDate()
}




5:抽取工具類
每一個類中都需要寫重復的代碼,而且一旦資料庫發生變化的話,就需要修改所有的代碼,此時可以抽取為工具類


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/71636.html
標籤:Java
