JDBC 入門(二)
更新時(shí)間:2006年10月13日 00:00:00 作者:
你需要做的第一事情是你與想要使用的 DBMS 建立一個(gè)連接。這包含 2 個(gè)步驟:裝載驅(qū)動(dòng)程序并建立連接。
裝載驅(qū)動(dòng)程序
裝載驅(qū)動(dòng)程序只需要非常簡(jiǎn)單的一行代碼。例如,你想要使用 JDBC-ODBC 橋驅(qū)動(dòng)程序, 可以用下列代碼裝載它:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
你的驅(qū)動(dòng)程序文檔將告訴你應(yīng)該使用的類名。例如, 如果類名是 jdbc.DriverXYZ ,你將用代碼以下的代碼裝載驅(qū)動(dòng)程序:
Class.forName("jdbc.DriverXYZ");
你不需要?jiǎng)?chuàng)建一個(gè)驅(qū)動(dòng)程序類的實(shí)例并且用 DriverManager 登記它,因?yàn)檎{(diào)用 Class.forName 將自動(dòng)將加載驅(qū)動(dòng)程序類。如果你曾自己創(chuàng)建實(shí)例,你將創(chuàng)建一個(gè)不必要的副本,但它不會(huì)帶來(lái)什么壞處。
加載 Driver 類后,它們即可用來(lái)與數(shù)據(jù)庫(kù)建立連接。
建立連接
第二步就是用適當(dāng)?shù)尿?qū)動(dòng)程序類與 DBMS 建立一個(gè)連接。下列代碼是一般的做法:
Connection con = DriverManager.getConnection(url, "myLogin", "myPassword");
這個(gè)步驟也非常簡(jiǎn)單,最難的是怎么提供 url。如果你正在使用 JDBC-ODBC 橋, JDBC URL 將以 jdbc:odbc 開(kāi)始:余下 URL 通常是你的數(shù)據(jù)源名字或數(shù)據(jù)庫(kù)系統(tǒng)。因此,假設(shè)你正在使用 ODBC 存取一個(gè)叫 "Fred" 的 ODBC 數(shù)據(jù)源,你的 JDBC URL 是 jdbc:odbc:Fred 。把 "myLogin" 及 "myPassword" 替換為你登陸 DBMS 的用戶名及口令。如果你登陸數(shù)據(jù)庫(kù)系統(tǒng)的用戶名為 "Fernanda" 口令為 "J8",只需下面的 2 行代碼就可以建立一個(gè)連接:
String url = "jdbc:odbc:Fred";
Connection con = DriverManager.getConnection(url,"Fernanda", "J8");
如果你使用的是第三方開(kāi)發(fā)了的 JDBC驅(qū)動(dòng)程序,文檔將告訴你該使用什么 subprotocol, 就是在 JDBC URL 中放在 jdbc 后面的部分。例如, 如果驅(qū)動(dòng)程序開(kāi)發(fā)者注冊(cè)了 acme 作為 subprotocol, JDBC URL 的第一和第二部分將是 jdbc:acme。驅(qū)動(dòng)程序文檔也會(huì)告訴你余下 JDBC URL 的格式。JDBC URL 最后一部分提供了定位數(shù)據(jù)庫(kù)的信息。
如果你裝載的驅(qū)動(dòng)程序識(shí)別了提供給 DriverManager.getConnection 的 JDBC URL ,那個(gè)驅(qū)動(dòng)程序?qū)⒏鶕?jù) JDBC URL 建立一個(gè)到指定 DBMS 的連接。正如名稱所示,DriverManager 類在幕后為你管理建立連接的所有細(xì)節(jié)。除非你是正在寫驅(qū)動(dòng)程序,你可能無(wú)需使用此類的其它任何方法,一般程序員需要在此類中直接使用的唯一方法是 DriverManager.getConnection。
DriverManager.getConnection 方法返回一個(gè)打開(kāi)的連接,你可以使用此連接創(chuàng)建 JDBC statements 并發(fā)送 SQL 語(yǔ)句到數(shù)據(jù)庫(kù)。在前面的例子里,con 對(duì)象是一個(gè)打開(kāi)的連接,并且我們要在以后的例子里使用它。
裝載驅(qū)動(dòng)程序
裝載驅(qū)動(dòng)程序只需要非常簡(jiǎn)單的一行代碼。例如,你想要使用 JDBC-ODBC 橋驅(qū)動(dòng)程序, 可以用下列代碼裝載它:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
你的驅(qū)動(dòng)程序文檔將告訴你應(yīng)該使用的類名。例如, 如果類名是 jdbc.DriverXYZ ,你將用代碼以下的代碼裝載驅(qū)動(dòng)程序:
Class.forName("jdbc.DriverXYZ");
你不需要?jiǎng)?chuàng)建一個(gè)驅(qū)動(dòng)程序類的實(shí)例并且用 DriverManager 登記它,因?yàn)檎{(diào)用 Class.forName 將自動(dòng)將加載驅(qū)動(dòng)程序類。如果你曾自己創(chuàng)建實(shí)例,你將創(chuàng)建一個(gè)不必要的副本,但它不會(huì)帶來(lái)什么壞處。
加載 Driver 類后,它們即可用來(lái)與數(shù)據(jù)庫(kù)建立連接。
建立連接
第二步就是用適當(dāng)?shù)尿?qū)動(dòng)程序類與 DBMS 建立一個(gè)連接。下列代碼是一般的做法:
Connection con = DriverManager.getConnection(url, "myLogin", "myPassword");
這個(gè)步驟也非常簡(jiǎn)單,最難的是怎么提供 url。如果你正在使用 JDBC-ODBC 橋, JDBC URL 將以 jdbc:odbc 開(kāi)始:余下 URL 通常是你的數(shù)據(jù)源名字或數(shù)據(jù)庫(kù)系統(tǒng)。因此,假設(shè)你正在使用 ODBC 存取一個(gè)叫 "Fred" 的 ODBC 數(shù)據(jù)源,你的 JDBC URL 是 jdbc:odbc:Fred 。把 "myLogin" 及 "myPassword" 替換為你登陸 DBMS 的用戶名及口令。如果你登陸數(shù)據(jù)庫(kù)系統(tǒng)的用戶名為 "Fernanda" 口令為 "J8",只需下面的 2 行代碼就可以建立一個(gè)連接:
String url = "jdbc:odbc:Fred";
Connection con = DriverManager.getConnection(url,"Fernanda", "J8");
如果你使用的是第三方開(kāi)發(fā)了的 JDBC驅(qū)動(dòng)程序,文檔將告訴你該使用什么 subprotocol, 就是在 JDBC URL 中放在 jdbc 后面的部分。例如, 如果驅(qū)動(dòng)程序開(kāi)發(fā)者注冊(cè)了 acme 作為 subprotocol, JDBC URL 的第一和第二部分將是 jdbc:acme。驅(qū)動(dòng)程序文檔也會(huì)告訴你余下 JDBC URL 的格式。JDBC URL 最后一部分提供了定位數(shù)據(jù)庫(kù)的信息。
如果你裝載的驅(qū)動(dòng)程序識(shí)別了提供給 DriverManager.getConnection 的 JDBC URL ,那個(gè)驅(qū)動(dòng)程序?qū)⒏鶕?jù) JDBC URL 建立一個(gè)到指定 DBMS 的連接。正如名稱所示,DriverManager 類在幕后為你管理建立連接的所有細(xì)節(jié)。除非你是正在寫驅(qū)動(dòng)程序,你可能無(wú)需使用此類的其它任何方法,一般程序員需要在此類中直接使用的唯一方法是 DriverManager.getConnection。
DriverManager.getConnection 方法返回一個(gè)打開(kāi)的連接,你可以使用此連接創(chuàng)建 JDBC statements 并發(fā)送 SQL 語(yǔ)句到數(shù)據(jù)庫(kù)。在前面的例子里,con 對(duì)象是一個(gè)打開(kāi)的連接,并且我們要在以后的例子里使用它。
相關(guān)文章
Java輸出系統(tǒng)當(dāng)前的日期(年月日時(shí)分秒毫秒)
當(dāng)前的日期輸出的方法有很多,本文為大家介紹下在java中是如何實(shí)現(xiàn)輸出年月日時(shí)分秒毫秒的,感興趣的朋友不妨參考下2013-09-09JSP頁(yè)面中如何用select標(biāo)簽實(shí)現(xiàn)級(jí)聯(lián)
在JSP頁(yè)面中如何用select標(biāo)簽實(shí)現(xiàn)級(jí)聯(lián)呢?以下小編就為大家介紹實(shí)現(xiàn)方法,需要的朋友可以參考下2013-07-07JSP基于JDBC的數(shù)據(jù)庫(kù)連接類實(shí)例
這篇文章主要介紹了JSP基于JDBC的數(shù)據(jù)庫(kù)連接類,以實(shí)例形式較為詳細(xì)的分析了JDBC連接數(shù)據(jù)庫(kù)的實(shí)現(xiàn)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-11-11JSP父頁(yè)面?zhèn)鲄?shù)到子頁(yè)面及接收示例
這篇文章主要介紹了JSP父頁(yè)面?zhèn)鲄?shù)到子頁(yè)面及接收,需要的朋友可以參考下2014-05-05jsp+servlet實(shí)現(xiàn)最簡(jiǎn)單的增刪改查代碼分享
本文主要分享了jsp+servlet實(shí)現(xiàn)的最簡(jiǎn)單的增刪改查代碼。代碼清晰明了,具有很好的參考價(jià)值,需要的朋友一起來(lái)看下吧2016-12-12JSP中常用的JSTL fmt(format格式化)標(biāo)簽用法整理
這篇文章主要介紹了JSP中常用的JSTL fmt(format格式化)標(biāo)簽用法整理,fmt的格式化處理遵循i18n國(guó)際化格式標(biāo)準(zhǔn),需要的朋友可以參考下2016-04-04在JSTL EL中處理java.util.Map,及嵌套List的情況
在EL中,方括號(hào)運(yùn)算符用來(lái)檢索數(shù)組和集合的元素。對(duì)于實(shí)現(xiàn) java.util.Map 接口的集合,方括號(hào)運(yùn)算符使用關(guān)聯(lián)的鍵查找存儲(chǔ)在映射中的值。2009-03-03