- 搞定J2EE核心技術與企業應用
- 常建功 王向華編著
- 158字
- 2018-12-29 13:50:07
第7章 JDBC技術詳解
一般來講,現在的Java Web開發已經很少直接使用JDBC進行數據庫的相關操作了,一般都是自己對JDBC進行封裝,或者直接使用開源的ORM產品,但萬變不離其宗,最終它們都離不開對JDBC的操作,因此了解JDBC的原理還是非常必要的。
本章首先介紹JDBC的基礎知識,然后通過示例講解如何使用JDBC操作數據庫,最后講解事務管理和數據庫連接池的相關知識。
7.1 JDBC概述
JDBC(Java Database Connectivity,數據庫連接)是用來執行SQL的Java API。開發人員可以使用這些標準API來連接和操作數據庫,實現數據庫應用程序的開發。
7.1.1 JDBC相關概念
JDBC是Java的規范,考慮到規范的適用性,JDBC只提供了最直接的數據庫操作規范。在java.sql包中的類,是Java應用程序用于連接數據庫的標準方法。
JDBC有以下3種產品組件。
● JDBC驅動程序管理器:是JDBC體系結構的支柱。它實際上很小,也很簡單,其主要作用是把Java應用程序連接到正確的JDBC驅動程序上,然后退出。
● JDBC驅動程序測試工具包:為JDBC驅動程序運行開發人員開發的程序提供一定的可信度。只有通過JDBC驅動程序測試的驅動程序才被認為是符合JDBC標準的。
● JDBC-ODBC橋:ODBC驅動程序可被用做JDBC驅動程序。它的實現為JDBC的快速發展提供了一條途徑,其長遠目標是提供一種訪問某些不常見的DBMS的方法。
目前比較常見的JDBC驅動程序分為以下4類。
● JDBC-ODBC橋+ODBC驅動程序:JDBC橋產品利用ODBC驅動程序提供JDBC訪問。這種類型的驅動程序最適合于企業網,或者是用Java編寫的三層結構的應用程序服務器。
● 本地API:這種類型的驅動程序把客戶機API上的JDBC調用轉換為Oracle、Sybase、Informix、DB2或其他DBMS的調用。
● JDBC網絡純Java驅動程序:這種類型驅動程序將JDBC轉換為與DBMS無關的網絡協議,之后這種協議又被某個服務器轉換為一種DBMS協議。這種網絡服務器中間件能夠將它的純Java客戶機連接到多種不同的數據庫上,所用的具體協議取決于提供者。這是最靈活的JDBC驅動程序,有可能所有這種解決方案的提供者都提供適合于Intranet使用的產品。
● 本地協議純Java驅動程序:這種類型的驅動程序將JDBC調用直接轉換為DBMS所使用的網絡協議,這將允許從客戶機上直接調用DBMS服務器,是訪問Intranet的一個很實用的解決方法。由于許多這樣的協議都是專用的,因此數據庫提供者自己是主要來源。
JDBC驅動程序中的第一種方式中出現了ODBC驅動程序,什么是ODBC驅動程序呢?ODBC(Openning DataBase Connection,開放式數據庫互連)驅動程序是由微軟設計和開發的一種通用、標準的操作數據庫的API,可以說其是一種數據庫系統應用程序的接口規范,該驅動程序的工作原理如圖7.1所示。

圖7.1 ODBC的工作原理
ODBC驅動程序的作用,是把應用程序中操作數據庫的指令,轉換成某一種數據庫相關的數據庫指令,然后由具體相關的驅動程序傳送給數據庫。在開發的時候,只需要面對統一格式的ODBC數據源即可,而不必針對各種不同數據庫做各種不同設計。
綜上所述,JDBC的功能如下:
● 提供多樣化的數據庫連接方法。
● 為各種不同的數據庫提供統一的操作界面。
7.1.2 配置JDBC驅動程序
MySQL數據庫的JDBC驅動程序稱為Connector/J,目前最新的版本為Connector/J 5.1.17。由于在3.1.7小節已經詳細介紹過關于該驅動程序的下載,所以該小節將介紹關于數據庫驅動程序的配置方式。即如何在MyEclipse工具中添加、修改和刪除該驅動程序的JRE包?具體步驟如下:
01 首先在MyEclipse的運行界面中選擇“Window>Preferences”命令,出現如圖7.2所示的對話框。

圖7.2 “Preferences”對話框
02 在“Preferences”對話框的左側選擇“Java>Build Path”選項,出現如圖7.3所示的列表。

圖7.3 User Libraries列表
03 在“User Libraries”界面中單擊“New”按鈕,在出現的如圖7.4所示的對話框中輸入名字,單擊“確定”按鈕就會新建一個User Libraries。

圖7.4 新建User Libraries
注意:不要選中復選框,否則該Libraries會成為系統默認的Libraries。
接著在User Libraries列表中選擇“MySQL”選項,單擊“Add JARs”按鈕把MySQL驅動程序(第3章下載的MySQL驅動程序Connector/J)添加進來,最后效果如圖7.5所示。

圖7.5 添加JAR包
如果在項目中想使用該JAR包,可以用鼠標右鍵單擊該項目,在彈出的快捷菜單中選擇如圖7.6所示的命令,這時就會出現如圖7.7所示的對話框。

圖7.6 “Add Libraries”命令

圖7.7 “Add Libraries”對話框
在“Add Libraries”對話框中,選擇“User Library”選項,單擊“Next”按鈕就會進入為“User Librarie”選擇具體內容的對話框(如圖7.8所示),選擇剛添加的“MySQL”,單擊“Finish”按鈕,就把MySQL驅動程序添加到了項目中。

圖7.8 選擇“MySQL”
當MySQL驅動程序添加到具體項目中后,在該項目中即可使用驅動程序提供的API,這樣就可以連接和操作數據庫了。
- Hands-On Intelligent Agents with OpenAI Gym
- 火格局的時空變異及其在電網防火中的應用
- 平面設計初步
- R Machine Learning By Example
- OpenStack Cloud Computing Cookbook
- Practical Big Data Analytics
- HTML5 Canvas Cookbook
- R Machine Learning Projects
- 工業機器人實操進階手冊
- Hadoop Beginner's Guide
- 玩轉PowerPoint
- 工業機器人應用系統三維建模
- Mastering Microsoft Dynamics 365 Customer Engagement
- Building Analytics Teams
- 傳感器與檢測技術