- 概念:
- Java database Connectivity Java數據庫連接,java語言操作數據庫
- Java database Connectivity Java數據庫連接,java語言操作數據庫
- 本質:
- 其實官方定義的一套操作所有關係型數據庫的規則,即接口。各個數據庫廠商去實現這套接口,提供數據庫驅動jar 包。我們可以使用這套接口(JDBC)編程,真正執行的代碼是驅動jar包中的實現類。
- JDBC定義了操作所有關係型數據庫的規則(接口)
- 快速入門:
- 導入驅動jar包
- 註冊驅動
- 獲取數據庫連接對象
- 定義SQL
- 獲取執行SQL語句的對象statement
- 執行SQL 返回結果
- 處理結果
- 釋放資源
代碼:
- 詳解各個對象
- DriverManager:驅動管理對象
- 註冊驅動:告訴程序使用哪個驅動jar
- DriverManager:驅動管理對象
注意:mysql5之後的驅動jar包可以省略註冊驅動的步驟
- 獲取數據庫連接
- 方法:static Connection getConnection(String url, String user, String password)
- 參數:
Url :指定的連接路徑
語法:jdbc:mysql://ip地址(域名):端口號/數據庫名稱
(本機可簡寫:jdbc:mysql:///數據庫名稱)
User:用戶名
Password: 密碼
- Connection:數據庫連接對象
- 功能:
- 獲取執行SQL的對象
- Statement CreateStatement()
- preparedStatement preparedStatement(String sql)
- 管理事務
- 開啓事務
- 提交事務
- 回滾事務
- 獲取執行SQL的對象
- 功能:
- Statement:執行SQL的對象
- 執行sql
- Boolean
- int executeUpdate(String sql);執行DML(insert、update、delete)語句
- ResultSet executeQuery(String sql);執行DDL(select)語句
- 執行sql
- Resultset:結果集對象
- boolean next();//遊標向下移動一行,判斷當前行是否是最後一行末尾(是否有數據),如果是,則返回false,如果不是則返回true
- getXxx(參數)//獲取數據
- 參數:
- int:代表獵德編號,從1開始 如: getString(1)
- String:代表列名稱 如:getDouble(“balance”)、
- 參數:
- 注意:
- 使用步驟:
- 遊標向下移動一行
- 判斷是否有數據
- 獲取數據
- 使用步驟:
代碼練習:
//循環判斷遊標是否是最後一行末尾
while(rs.next()){
//獲取數據
int id = rs.getInt(1);
String name = rs.getString("name");
double balance = rs.getDouble(3);
System.out.println(id+"---"+name+"---"+balance);
}