欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > JDBCTM 指南:入門2 - 連接

JDBCTM 指南:入門2 - 連接

熱門標簽:珠海銷售外呼系統運營商 電銷外呼系統 排行榜 地圖標注制作道路 廣州三五防封電銷卡 四川電信外呼系統靠譜嗎 長春回撥外呼系統廠家 地圖標注創業項目入駐 外呼系統啥意思 山東智能云外呼管理系統
內容: 2 - 連接本概述是從《JDBCTM Database Access from JavaTM: A Tutorial
and Annotated Reference 》這本書中摘引來的。JavaSoft 目前正在準備這本書。這本書是一本教程,同時也是 JDBC 的重要參考手冊,它將作為 Java 系列的組成部份在 1997 年春季由 Addison-Wesley 出版公司出版。
2.1 概述
Connection 對象代表與數據庫的連接。連接過程包括所執行的 SQL 語句和在該連接上所返回的結果。一個應用程序可與單個數據庫有一個或多個連接,或者可與許多數據庫有連接。
2.1.1 打開連接與數據庫建立連接的標準方法是調用 DriverManager.getConnection
方法。該方法接受含有某個 URL 的字符串。DriverManager 類(即所謂的 JDBC 管理層)將嘗試找到可與那個 URL 所代表的數據庫進行連接的驅動程序。DriverManager 類存有已注冊的 Driver 類的清單。當調用方法 getConnection 時,它將檢查清單中的每個驅動程序,直到找到可與 URL 中指定的數據庫進行連接的驅動程序為止。Driver 的方法 connect 使用這個 URL 來建立實際的連接。
用戶可繞過 JDBC 管理層直接調用 Driver 方法。這在以下特殊情況下將很有用:當兩個驅動器可同時連接到數據庫中,而用戶需要明確地選用其中特定的驅動器。但一般情況下,讓 DriverManager 類處理打開連接這種事將更為簡單。
下述代碼顯示如何打開一個與位于 URL "jdbc:odbc:wombat" 的數據庫的連接。所用的用戶標識符為 "oboy" ,口令為 "12Java":
String url = "jdbc:odbc:wombat";
Connection con = DriverManager.getConnection(url, "oboy", "12Java");
2.1.2 一般用法的 URL由于 URL 常引起混淆,我們將先對一般 URL 作簡單說明,然后再討論 JDBC URL。
URL(統一資源定位符)提供在 Internet 上定位資源所需的信息??蓪⑺胂鬄橐粋€地址。
URL 的第一部份指定了訪問信息所用的協議,后面總是跟著冒號。常用的協議有 "ftp"(代表“文件傳輸協議”)和 "http" (代表“超文本傳輸協議”)。
如果協議是 "file",表示資源是在某個本地文件系統上而非在 Internet 上(下例用于表示我們所描述的部分;它并非 URL 的組成部分)。
ftp://javasoft.com/docs/JDK-1_apidocs.zip
http://java.sun.com/products/jdk/CurrentRelease
file:/home/haroldw/docs/books/tutorial/summary.html
URL 的其余部份(冒號后面的)給出了數據資源所處位置的有關信息。如果協議是 file,則 URL 的其余部份是文件的路徑。對于 ftp 和 http 協議,URL 的其余部份標識了主機并可選地給出某個更詳盡的地址路徑。例如,以下是 JavaSoft 主頁的 URL。該 URL 只標識了主機:
http://java.sun.com從該主頁開始瀏覽,就可以進到許多其它的網頁中,其中之一就是
JDBC 主頁。JDBC 主頁的 URL 更為具體,它看起來類似: http://java.sun.com/products/jdbc
2.1.3 JDBC URL JDBC URL 提供了一種標識數據庫的方法,可以使相應的驅動程序能識別該數據庫并與之建立連接。實際上,驅動程序編程員將決定用什么 JDBC URL 來標識特定的驅動程序。用戶不必關心如何來形成 JDBC URL;他們只須使用與所用的驅動程序一起提供的 URL 即可。JDBC 的作用是提供某些約定,驅動程序編程員在構造他們的 JDBC URL 時應該遵循這些約定。
由于 JDBC URL 要與各種不同的驅動程序一起使用,因此這些約定應非常靈活。首先,它們應允許不同的驅動程序使用不同的方案來命名數據庫。例如, odbc 子協議允許(但并不是要求) URL 含有屬性值。第二,JDBC URL 應允許驅動程序編程員將一切所需的信息編入其中。這樣就可以讓要與給定數據庫對話的 applet 打開數據庫連接,而無須要求用戶去做任何系統管理工作。
第三, JDBC URL 應允許某種程度的間接性。也就是說,JDBC URL 可指向邏輯主機或數據庫名,而這種邏輯主機或數據庫名將由網絡命名系統動態地轉換為實際的名稱。這可以使系統管理員不必將特定主機聲明為 JDBC 名稱的一部份。網絡命名服務(例如 DNS、 NIS 和 DCE )有多種,而對于使用哪種命名服務并無限制。JDBC URL 的標準語法如下所示。它由三部分組成,各部分間用冒號分隔:
jdbc: 子協議 >: 子名稱 >JDBC URL 的三個部分可分解如下: jdbc ─ 協議。JDBC URL 中的協議總是 jdbc。
子協議> ─ 驅動程序名或數據庫連接機制(這種機制可由一個或多個驅動程序支持)的名稱。子協議名的典型示例是 "odbc",該名稱是為用于指定 ODBC 風格的數據資源名稱的 URL 專門保留的。例如,為了通過 JDBC-ODBC 橋來訪問某個數據庫,可以用如下所示的 URL:
jdbc:odbc:fred本例中,子協議為 "odbc",子名稱 "fred" 是本地ODBC 數據資源。
如果要用網絡命名服務(這樣 JDBC URL 中的數據庫名稱不必是實際名稱),則命名服務可以作為子協議。例如,可用如下所示的 URL :
jdbc:dcenaming:accounts-payable本例中,該 URL 指定了本地 DCE 命名服務應該將
數據庫名稱 "accounts-payable" 解析為更為具體的可用于連接真實數據庫的名稱。子名稱> ─ 一種標識數據庫的方法。子名稱可以依不同的子協議而
變化。它還可以有子名稱的子名稱(含有驅動程序編程員所選的任何內部語法)。使用子名稱的目的是為定位數據庫提供足夠的信息。前
例中,因為 ODBC 將提供其余部份的信息,因此用 "fred" 就已足夠。然而,位于遠程服務器上的數據庫需要更多的信息。例如,如果數據庫是通過 Internet 來訪問的,則在 JDBC URL 中應將網絡地址作為子名稱的一部份包括進去,且必須遵循如下所示的標準 URL 命名約定:
//主機名:端口/子協議假設 "dbnet" 是個用于將某個主機連接到 Internet 上的協議,則 JDBC URL 類似:
jdbc:dbnet://wombat:356/fred 2.1.4 "odbc" 子協議
子協議 odbc 是一種特殊情況。它是為用于指定 ODBC 風格的數據資源名稱的 URL 而保留的,并具有下列特性:允許在子名稱(數據資源名稱)后面指定任意多個屬性值。odbc 子協議的完整語法為: jdbc:odbc: 數據資源名稱 >[; 屬性名 >= 屬性值 >]*因此,以下都是合法的 jdbc:odbc 名稱: jdbc:odbc:qeor7jdbc:odbc:wombat
jdbc:odbc:wombat;CacheSize=20;ExtensionCase=LOWER
jdbc:odbc:qeora;UID=kgh;PWD=fooey2.1.5 注冊子協議驅動程序編程員可保留某個名稱以將之用作 JDBC URL 的子協議名。
當 DriverManager 類將此名稱加到已注冊的驅動程序清單中時,為之保留該名稱的驅動程序應能識別該名稱并與它所標識的數據庫建立連接。例如,odbc 是為 JDBC- ODBC 橋而保留的。示例之二,假設有個 Miracle 公司,它可能會將 "miracle" 注冊為連接到其 Miracle DBMS 上的 JDBC 驅動程序的子協議,從而使其他人都無法使用這個名稱。JavaSoft 目前作為非正式代理負責注冊 JDBC 子協議名稱。要注冊某個子協議名稱,請發送電子郵件到下述地址:
jdbc@wombat.eng.sun.com2.1.6 發送 SQL 語句連接一旦建立,就可用來向它所涉及的數據庫傳送 SQL 語句。JDBC對可被發送的 SQL 語句類型不加任何限制。這就提供了很大的靈活性,即允許使用特定的數據庫語句或甚至于非 SQL 語句。然而,它要
求用戶自己負責確保所涉及的數據庫可以處理所發送的 SQL 語句,否則將自食其果。例如,如果某個應用程序試圖向不支持儲存程序的 DBMS 發送儲存程序調用,就會失敗并將拋出異常。JDBC 要求驅動程序應至少能提供 ANSI SQL-2 Entry Level 功能才可算是符合 JDBC 標準TM 的。這意味著用戶至少可信賴這一標準級別的功能。JDBC 提供了三個類,用于向數據庫發送 SQL 語句。Connection 接口中的三個方法可用于創建這些類的實例。下面列出這些類及其創建方法:
Statement ─ 由方法 createStatement 所創建。Statement 對象用于發送簡單的 SQL 語句。
PreparedStatement ─ 由方法 prepareStatement 所創建。
PreparedStatement 對象用于發送帶有一個或多個輸入參數( IN 參數)
的 SQL 語句。PreparedStatement 擁有一組方法,用于設置 IN 參數的值。
執行語句時,這些 IN 參數將被送到數據庫中。PreparedStatement 的實
例擴展了 Statement ,因此它們都包括了 Statement 的方法。
PreparedStatement 對象有可能比 Statement 對象的效率更高,因為它已被預編譯過并存放在那以供將來使用。
CallableStatement ─ 由方法 prepareCall 所創建。CallableStatement 對象
用于執行 SQL 儲存程序 ─ 一組可通過名稱來調用(就象函數的調用那樣)的
SQL 語句。CallableStatement 對象從 PreparedStatement 中繼承了用于
處理 IN 參數的方法,而且還增加了用于處理 OUT 參數和 INOUT 參數的方法。
以下所列提供的方法可以快速決定應用哪個 Connection 方法來創建不同類型的 SQL 語句: createStatement 方法用于:
簡單的 SQL 語句(不帶參數) prepareStatement 方法用于: 帶一個或多個 IN 參數的 SQL 語句 經常被執行的簡單 SQL 語句
prepareCall 方法用于: 調用已儲存過程2.1.7 事務事務由一個或多個這樣的語句組成:這些語句已被執行、完成并被提交或還原。當調用方法 commit 或 rollback 時,當前事務即告就結束,另一個事務隨即開始。
缺省情況下,新連接將處于自動提交模式。也就是說,當執行完語句后,將自動對那個語句調用 commit 方法。這種情況下,由于每個語句都是被單獨提交的,因此一個事務只由一個語句組成。如果禁用自動提交模式,事務將要等到 commit 或 llback 方法被顯式調用時
才結束,因此它將包括上一次調用 commit 或 rollback 方法以來所有執行過的語句。對于第二種情況,事務中的所有語句將作為組來提交或還原。方法 commit 使 SQL 語句對數據庫所做的任何更改成為永久性的,它還將釋放事務持有的全部鎖。而方法 rollback 將棄去那些更改。
有時用戶在另一個更改生效前不想讓此更改生效。這可通過禁用自動提交并將兩個更新組合在一個事務中來達到。如果兩個更新都是成功
,則調用 commit 方法,從而使兩個更新結果成為永久性的;如果其中之一或兩個更新都失敗了,則調用 rollback 方法,以將值恢復為進行更新之前的值。
大多數 JDBC 驅動程序都支持事務。事實上,符合 JDBC 的驅動程序必須支持事務。DatabaseMetaData 給出的信息描述 DBMS 所提供的事務支持水平。2.1.8 事務隔離級別如果 DBMS 支持事務處理,它必須有某種途徑來管理兩個事務同時對一個數據庫進行操作時可能發生的沖突。用戶可指定事務隔離級別,以指明 DBMS 應該花多大精力來解決潛在沖突。例如,當事務更改了某個值而第二個事務卻在該更改被提交或還原前讀取該值時該怎么辦 假設第一個事務被還原后,第二個事務所讀取的更改值將是無效的,那么是否可允許這種沖突? JDBC 用戶可用以下代碼來指示 DBMS 允許在值被提交前讀取該值(“dirty 讀取”),其中 con 是當前連接:
con.setTransactionIsolation(TRANSACTION_READ_UNCOMMITTED);
事務隔離級別越高,為避免沖突所花的精力也就越多。Connection 接口定義了五級,其中最低級別指定了根本就不支持事務,而最高級別則指定當事務在對某個數據庫進行操作時,任何其它事務不得對那個事務正在讀取的數據進行任何更改。通常,隔離級別越高,應用程序執行的速度也就越慢(由于用于鎖定的資源耗費增加了,而用戶間的并發操作減少了)。在決定采用什么隔離級別時,開發人員必須在性能需求和數據一致性需求之間進行權衡。當然,實際所能支持的級別取決于所涉及的 DBMS 的功能。
當創建 Connection 對象時,其事務隔離級別取決于驅動程序,但通常是所涉及的數據庫的缺省值。用戶可通過調用 setIsolationLevel方法來更改事務隔離級別。新的級別將在該連接過程的剩余時間內生效。要想只改變一個事務的事務隔離級別,必須在該事務開始前進行設置,并在該事務結束后進行復位。我們不提倡在事務的中途對事務隔離級別進行更改,因為這將立即觸發 commit 方法的調用,使在
此之前所作的任何更改變成永久性的。

標簽:玉樹 紹興 廣元 潮州 保定 肇慶 北海 吳忠

巨人網絡通訊聲明:本文標題《JDBCTM 指南:入門2 - 連接》,本文關鍵詞  JDBCTM,指南,入門,連接,JDBCTM,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《JDBCTM 指南:入門2 - 連接》相關的同類信息!
  • 本頁收集關于JDBCTM 指南:入門2 - 連接的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    免费a v网站| 精品日韩av一区二区| 国产精品久久夜| 韩国成人福利片在线播放| 一区二区三区免费在线观看视频| 欧美浪妇xxxx高跟鞋交| 亚洲一级二级三级在线免费观看| 91免费国产在线| 欧美性生活影院| 夜夜爽夜夜爽精品视频| 亚洲成人av免费观看| 欧美性淫爽ww久久久久无| 亚洲男人的天堂在线观看| 99精品一区二区三区| 色婷婷综合在线| 亚洲欧美激情一区二区| 91视频在线观看| 欧美日韩中字一区| 亚洲高清视频中文字幕| 国产精品成人99一区无码| 欧美一区二区三区四区五区 | 国产日产欧美一区二区三区| 韩国视频一区二区| 香蕉成人在线视频| 国产精品久久久久精k8| av动漫一区二区| 欧美三级欧美一级| 偷拍与自拍一区| a级大片在线观看| 国产国语老龄妇女a片| 欧美一区二区网站| 久久精品噜噜噜成人av农村| 亚洲天堂精品一区| 亚洲色图另类专区| 中文字幕天堂av| 欧美www视频| 国产成人精品www牛牛影视| 日本高清不卡一区| 亚洲成人激情av| 五月天综合视频| 中文字幕av一区二区三区| 97精品视频在线观看自产线路二| 欧美日韩的一区二区| 欧美a级理论片| 永久免费看片直接| 亚洲综合在线视频| 性欧美13一14内谢| 亚洲欧洲精品一区二区三区 | 色综合天天狠狠| 亚洲一区二区欧美激情| av无码av天天av天天爽| 国产日本亚洲高清| 男人女人拔萝卜视频| 精品欧美一区二区在线观看| 国产精品一区二区在线观看网站| 久久国产波多野结衣| 亚洲小说春色综合另类电影| av女人的天堂| 日韩毛片精品高清免费| www.日本高清| 国产精品国产馆在线真实露脸| 日本人妻一区二区三区| 久久这里只精品最新地址| av电影天堂一区二区在线| 日韩欧美在线影院| 成人激情视频网站| 欧美一区二区三区的| 国产成人av一区| 欧美电影影音先锋| 粉嫩一区二区三区性色av| 91麻豆精品国产91久久久使用方法 | 日韩久久久久久| 99综合电影在线视频| 日韩一区二区三区电影在线观看| 国产凹凸在线观看一区二区| 91精品国产综合久久久蜜臀图片| 国产不卡视频在线播放| 日韩一区二区三区电影 | 人妻久久一区二区| 日本亚洲免费观看| 色综合视频一区二区三区高清| 狂野欧美性猛交blacked| 91久久精品一区二区三区| 经典三级视频一区| 欧美另类变人与禽xxxxx| 国产不卡视频在线播放| 欧美变态tickle挠乳网站| 亚洲国产综合av| 欧美国产一区在线| 免费在线观看成年人视频| 一区二区三区色| 黑人操日本美女| 久久精品国产亚洲5555| 欧美日韩精品免费观看视频| 国产91丝袜在线18| 久久日韩精品一区二区五区| 这里只有精品在线观看视频| 一区二区欧美国产| 18岁成人毛片| 国产麻豆视频一区二区| 日韩欧美中文一区| 制服丝袜在线第一页| 亚洲欧洲制服丝袜| 国产成人免费在线观看视频| 久久精品99国产精品日本| 91精品一区二区三区在线观看| 99久久精品费精品国产一区二区| 国产色综合久久| 日韩丰满少妇无码内射| 天堂久久久久va久久久久| 欧美视频你懂的| 99久久久免费精品国产一区二区| 国产欧美精品国产国产专区| 成人在线一级片| 青青青爽久久午夜综合久久午夜| 欧美电影在哪看比较好| 色哟哟网站在线观看| 亚洲精品v日韩精品| 69xx绿帽三人行| 国产.欧美.日韩| 欧美高清在线精品一区| 中文字幕91视频| 国产精品888| 欧美国产日韩a欧美在线观看| ass极品国模人体欣赏| 九九九精品视频| 亚洲精品在线电影| 国产精品高清无码在线观看| 捆绑变态av一区二区三区| 精品国产91洋老外米糕| 欧美亚一区二区三区| 男人操女人的视频在线观看欧美| 91精品免费在线| av黄色一级片| 毛片av一区二区| 久久亚洲一区二区三区四区| 亚洲欧美va天堂人熟伦| 国产在线播放一区三区四| 国产亚洲欧美日韩在线一区| 成年人视频软件| 风间由美一区二区三区在线观看| 国产精品久久久久影院| 一本大道久久a久久综合婷婷| av激情综合网| 亚洲成人精品影院| 欧美一区二区免费| 免费看黄色的视频| 国产激情偷乱视频一区二区三区| 亚洲国产高清不卡| 91成人免费网站| 国产69视频在线观看| 奇米影视一区二区三区| 久久这里只有精品视频网| 日本黄色片免费观看| 91啪亚洲精品| 丝袜美腿亚洲综合| 久久这里只有精品视频网| 手机在线免费看毛片| 深夜福利网站在线观看| 日韩成人午夜精品| 久久久国产精华| 色诱亚洲精品久久久久久| 国产高潮失禁喷水爽到抽搐| 免费看日韩精品| 国产欧美日韩精品a在线观看| 色综合av在线| 久久久无码人妻精品一区| 国产精品综合一区二区三区| 亚洲日本在线观看| 91精品国产综合久久小美女| 欧美丰满老妇熟乱xxxxyyy| 成人性生交大合| 午夜伦理一区二区| 国产欧美日本一区视频| 欧美色网一区二区| 亚洲精品成人无码| av影院午夜一区| 七七婷婷婷婷精品国产| 中文字幕一区二区三| 717成人午夜免费福利电影| 国产第一页精品| 日本xxxx免费| 国产在线视频一区二区| 一区二区不卡在线视频 午夜欧美不卡在 | 日韩 中文字幕| 国产成人精品亚洲777人妖| 午夜精品福利一区二区蜜股av| 久久精品这里都是精品| 欧美天堂一区二区三区| 免费在线观看a视频| 91看片淫黄大片一级在线观看| 久久精品国产精品亚洲红杏| 亚洲久本草在线中文字幕| 精品毛片乱码1区2区3区| 欧美午夜一区二区三区免费大片| 亚洲精品国产熟女久久久| 亚洲AV成人精品| 国产高清精品久久久久| 日本美女一区二区三区视频| 亚洲欧洲国产专区|