一個完整的資料庫部署架構通常由客戶端和伺服器端兩部分組成。客戶端封裝資料庫請求將其發送給伺服器端,伺服器端執行完畢將其及結果返回給伺服器端。 以mysql為例 介紹java應用程式對資料庫的訪問 JDBC意義:應用程式通過調用統一介面實現對任意資料庫的訪問,為我們屏蔽了客戶端與伺服器端交互協議的實現 ...
一個完整的資料庫部署架構通常由客戶端和伺服器端兩部分組成。客戶端封裝資料庫請求將其發送給伺服器端,伺服器端執行完畢將其及結果返回給伺服器端。
以mysql為例
介紹java應用程式對資料庫的訪問
JDBC意義:應用程式通過調用統一介面實現對任意資料庫的訪問,為我們屏蔽了客戶端與伺服器端交互協議的實現細節。
對java而言,JDBC是一個類庫,對資料庫而言,JDBC是介面規範。
有了JDBC,應用程式變得更加簡單,提高了程式開發的效率,使java web面向不同的資料庫時,具有跨平臺性,基於JDBC之上,我們可以開發功能更強大的框架。
JDBC體系架構圖
JDBC從體系架構來說,分為兩層:
上層API:與我們編寫的java web程式進行通信
下層資料庫驅動層:和具體的資料庫進行連接,一般由各個資料庫廠商提供
在使用JDBC之前,我們先準備一個mysql資料庫的後端實例,java應用程式實現讀取人名
JDBC API 涉及的幾個重要的java類:
1.Driver &DriverManager
Driver實際上是一個介面,定義了各個驅動程式必須要實現的功能,是驅動程式的抽象。通過操作Driver介面,即可實現對各個驅動程式的操作。
DriverManager是Driver的管理類,用戶通過class.forname的方式,向DriverManager註冊一個驅動程式,然後DriverManager通過getConnection方法,調用該驅動程式,建立到後端資料庫的物理鏈接。
Connection對象代表java應用程式對後端資料庫的一條物理鏈接。
Connection對象創建一個或多個Statement對象
Statement對象:是一個sql容器,容器中存放sql語句,執行更新查詢刪除操作,
通過Statement對象的executeQuery方法執行一個資料庫查詢得到資料庫查詢結果的一個集合,集合以ResultSet對象表示。
通過Statement對象的execute和executeUpdate語句刪除和更新,返回的是INT值的對象,代表操作影響了多少條資料庫記錄。
介紹一下ResultSet對象:
代表了sql查詢的結果,關係型資料庫本質上是一個二元表,ResultSet對象實際上也是行和列組成的二元表。
分別是下一行,前一行,定位到某一行,第一行前,最後一行後
調整到行後需對應到列:
列名或列序號(從0開始排序)
操作過程中可能會拋出異常,sqlException進行處理
getConnection(DB_URL,UDER,PASS) 有三個參數.
構建Java Web程式
包括五個步驟
1.javaManger註冊一個驅動程式
2.通過getConnection方法建立一個到後端資料庫的鏈接
3.通過向Statement容器中放置SQL語句完成SQL語句的執行
4.ResultSet對象確定行和列,獲取某行某列對應的值
5.清理資源
待續。。。