亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

JDBCTM 指南:入門3 - DriverManager

2019-11-18 21:01:24
字體:
來源:轉載
供稿:網友
內容:
3 - DriverManager
3.1 概述
DriverManager 類是 JDBC 的管理層,作用于用戶和驅動程序之間。
它跟蹤可用的驅動程序,并在數據庫和相應驅動程序之間建立連接。
另外,DriverManager 類也處理諸如驅動程序登錄時間限制及登錄和
跟蹤消息的顯示等事務。

對于簡單的應用程序,一般程序員需要在此類中直接使用的唯一方法
是 DriverManager.getConnection。正如名稱所示,該方法將建立與
數據庫的連接。JDBC 允許用戶調用 DriverManager 的方法
getDriver、getDrivers 和 registerDriver 及 Driver 的方法
connect。但多數情況下,讓 DriverManager 類管理建立連接的細
節為上策。


3.1.1 跟蹤可用驅動程序
DriverManager 類包含一列 Driver 類,它們已通過調用方法
DriverManager.registerDriver 對自己進行了注冊。所有 Driver
類都必須包含有一個靜態部分。它創建該類的實例,然后在加載該
實例時 DriverManager 類進行注冊。這樣,用戶正常情況下將不會
直接調用 DriverManager.registerDriver;而是在加載驅動程序時
由驅動程序自動調用。加載 Driver 類,然后自動在 DriverManager
中注冊的方式有兩種:


通過調用方法 Class.forName。這將顯式地加載驅動程序類。由于這
與外部設置無關,因此推薦使用這種加載驅動程序的方法。以下代碼
加載類 acme.db.Driver:
Class.forName("acme.db.Driver");

如果將 acme.db.Driver 編寫為加載時創建實例,并調用以該實例為
參數的 DriverManager.registerDriver(本該如此),則它在
DriverManager 的驅動程序列表中,并可用于創建連接。


通過將驅動程序添加到 java.lang.System 的屬性 jdbc.drivers 中
這是一個由 DriverManager 類加載的驅動程序類名的列表,由冒號
分隔:初始化 DriverManager 類時,它搜索系統屬性 jdbc.drivers,
如果用戶已輸入了一個或多個驅動程序,則 DriverManager 類將試圖加載它們。
以下代碼說明程序員如何在 ~/.hotjava/PRoperties 中輸入三個驅動程序類(
啟動時,HotJava 將把它加載到系統屬性列表中):
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.test.ourDriver;

對 DriverManager 方法的第一次調用將自動加載這些驅動程序類。

注意:加載驅動程序的第二種方法需要持久的預設環境。如果對這一點不能
保證,則調用方法 Class.forName 顯式地加載每個驅動程序就顯得更為
安全。這也是引入特定驅動程序的方法,因為一旦 DriverManager 類被初始化,它
將不再檢查 jdbc.drivers 屬性列表。

在以上兩種情況中,新加載的 Driver 類都要通過調用 DriverManager.registerDriver
類進行自我注冊。如上所述,加載類時將自動執行這一過程。

由于安全方面的原因,JDBC 管理層將跟蹤哪個類加載器提供哪
個驅動程序。這樣,當 DriverManager 類打開連接時,它僅使用
本地文件系統或與發出連接請求的代碼相同的類加載器提供的驅動程序。


3.1.2 建立連接
加載 Driver 類并在 DriverManager 類中注冊后,它們即可用來與數
據庫建立連接。當調用 DriverManager.getConnection 方法發出連接
請求時,DriverManager 將檢查每個驅動程序,查看它是否可以建立連接。

有時可能有多個 JDBC 驅動程序可以與給定的 URL 連接。例如,與
給定遠程數據庫連接時,可以使用 JDBC-ODBC 橋驅動程序、JDBC 到
通用網絡協議驅動程序或數據庫廠商提供的驅動程序。在這種情況下
測試驅動程序的順序至關重要,因為 DriverManager 將使用它所找到
的第一個可以成功連接到給定 URL 的驅動程序。

首先 DriverManager 試圖按注冊的順序使用每個驅動程序
(jdbc.drivers 中列出的驅動程序總是先注冊)。它將跳過代碼不可
信任的驅動程序,除非加載它們的源與試圖打開連接的代碼的源相同。

它通過輪流在每個驅動程序上調用方法 Driver.connect,并向它們傳
遞用戶開始傳遞給方法 DriverManager.getConnection 的 URL 來對驅
動程序進行測試,然后連接第一個認出該 URL 的驅動程序。

這種方法初看起來效率不高,但由于不可能同時加載數十個驅動程序,
因此每次連接實際只需幾個過程調用和字符串比較。

以下代碼是通常情況下用驅動程序(例如 JDBC-ODBC 橋驅動程序)
建立連接所需所有步驟的示例:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加載驅動程序
String url = "jdbc:odbc:fred";
DriverManager.getConnection(url, "userID", "passwd");



  
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久成人精品视频| 国产成人综合一区二区三区| 性视频1819p久久| 国产不卡视频在线| 亚洲精品欧美日韩| 国产91成人video| 国产精品444| 精品av在线播放| 国产精品69精品一区二区三区| 欧美日本啪啪无遮挡网站| 欧美亚洲激情在线| 欧美大荫蒂xxx| 国产精品中文字幕久久久| 国产精品av电影| 91精品久久久久久久久久入口| 国产成人在线亚洲欧美| 亚洲最新中文字幕| 欧美视频一区二区三区…| 亚洲人成网在线播放| 亚洲欧美一区二区精品久久久| 91在线中文字幕| 精品国产乱码久久久久酒店| 国产精品欧美亚洲777777| 国产成人精品视| 国产精品免费久久久久久| 亚洲第一区中文99精品| 亚洲欧美国产高清va在线播| 91久久精品日日躁夜夜躁国产| 国产精品久久久久久久久借妻| 亚洲欧美激情精品一区二区| 日本免费久久高清视频| 欧美精品免费看| 欧美日韩高清区| 亚洲成人激情在线观看| 日韩免费观看网站| 久久久av亚洲男天堂| 91在线观看免费高清| 91精品国产综合久久香蕉922| 性欧美暴力猛交69hd| 欧美又大粗又爽又黄大片视频| 久久精品影视伊人网| 久久久久国色av免费观看性色| 尤物九九久久国产精品的特点| 国产91精品最新在线播放| 欧美日韩在线视频首页| 亚洲欧洲国产伦综合| 国产精品一区二区久久国产| 欧美在线视频一区| 久国内精品在线| 91在线视频成人| 永久555www成人免费| 高清欧美一区二区三区| 欧美成人午夜免费视在线看片| 亚洲高清免费观看高清完整版| 色妞色视频一区二区三区四区| 搡老女人一区二区三区视频tv| 色噜噜狠狠色综合网图区| 最近2019好看的中文字幕免费| 国产成人精品一区| 国内精品久久久久久久| 91精品美女在线| 亚洲影视九九影院在线观看| 成人午夜高潮视频| 日韩在线欧美在线| 亚洲欧美制服综合另类| 国产精品99久久久久久白浆小说| 久久影视免费观看| 国产欧美日韩精品丝袜高跟鞋| 国产在线观看精品| 国产亚洲免费的视频看| 亚洲男人天堂九九视频| 欧美夫妻性生活视频| 91豆花精品一区| 成人97在线观看视频| 欧美激情区在线播放| 成人激情视频在线观看| 国产小视频91| 国产精品福利久久久| 成人h片在线播放免费网站| 久久久久久国产免费| 亚洲人成电影网| 中文字幕亚洲一区| 亚洲精品v欧美精品v日韩精品| 欧美性videos高清精品| 久久精彩免费视频| 法国裸体一区二区| www.久久久久久.com| 久久噜噜噜精品国产亚洲综合| 国产日韩欧美在线观看| 亚洲黄在线观看| 亚洲国产精品女人久久久| 亚洲成人网av| 国产精品偷伦视频免费观看国产| 成人黄色网免费| 精品美女国产在线| 亚洲精品中文字幕有码专区| 国产精品狼人色视频一区| 国产精品无av码在线观看| 亚洲va男人天堂| 亚洲美女激情视频| 久久精品国产99国产精品澳门| 日韩电视剧免费观看网站| 色视频www在线播放国产成人| 亚洲男子天堂网| 亚洲精品aⅴ中文字幕乱码| 国产一区二区日韩精品欧美精品| 日韩欧美一区二区在线| 亚洲欧美精品在线| 日韩电影中文 亚洲精品乱码| 亚洲国产成人精品久久| 国产午夜精品麻豆| 欧美激情手机在线视频| 亚洲国产欧美在线成人app| 国产+人+亚洲| www欧美xxxx| 久久精彩免费视频| 亚洲va电影大全| 亚洲一区二区免费在线| 久久影院免费观看| 欧美国产高跟鞋裸体秀xxxhd| 欧美大片网站在线观看| 国产精品第一第二| 欧美激情精品久久久久久蜜臀| 国产精品狼人色视频一区| 中文字幕精品www乱入免费视频| 91夜夜揉人人捏人人添红杏| 日韩欧美在线视频| 国产a∨精品一区二区三区不卡| 亚洲国产精久久久久久| 亚洲女人天堂网| 亚洲www视频| 欧美成人全部免费| 色在人av网站天堂精品| 欧美激情女人20p| 欧美日韩成人在线视频| 国产精品旅馆在线| 欧洲成人免费视频| 亚洲人成欧美中文字幕| 庆余年2免费日韩剧观看大牛| 一区二区三区久久精品| 亚洲精品成人免费| 黄色一区二区三区| 3344国产精品免费看| 久久久久久久一| 亚洲成av人片在线观看香蕉| 性欧美长视频免费观看不卡| 国产精品www| 久久久久999| 国产欧美va欧美va香蕉在| 欧美三级欧美成人高清www| 日韩av影视在线| 国产成人综合亚洲| 日韩视频在线免费| 亚洲欧洲第一视频| 欧美视频国产精品| 欧美精品在线视频观看| 这里只有视频精品| 97超级碰在线看视频免费在线看| 日本成人黄色片| 91成人在线观看国产| 欧美性猛交xxxx乱大交3| 国产欧美日韩视频| 最近2019中文字幕大全第二页| 性欧美暴力猛交69hd|