DriverManager 提供管理 JDBC 驅(qū)動(dòng)器設(shè)置的基本服務(wù)。
作為初始化的一部分,DriverManager 類試圖參考
"jdbc.drivers" 系統(tǒng)屬性加載驅(qū)動(dòng)器類。
這允許用戶為他們的應(yīng)用程序定制 JDBC 驅(qū)動(dòng)器。 例如,在 /.hotjava/properties 文件中,你可以指定:
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
程序也可以隨時(shí)顯式加載 JDBC 驅(qū)動(dòng)器。
例如,用下列語(yǔ)句加載 my.sql.Driver :
Class.forName("my.sql.Driver");
當(dāng)調(diào)用 getConnection 時(shí),DriverManager 試圖定位一個(gè)適當(dāng)?shù)尿?qū)動(dòng)器,它是從那些初始化時(shí)已選取的的驅(qū)動(dòng)器中選擇的,或從那些與當(dāng)前 Applet或應(yīng)用程序顯式使用相同的類加載器已選取的驅(qū)動(dòng)器中選擇的。
java.sql.DriverManager 類
java.lang.Object
|
+----java.sql.DriverManager
- public class DriverManager
- extends Object
- 參見:
- Driver, Connection
方法索引
- deregisterDriver(Driver)
- 從 DriverManager 列表中刪掉一個(gè)驅(qū)動(dòng)器。
- getConnection(String)
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
- getConnection(String, Properties)
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
- getConnection(String, String, String)
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
- getDriver(String)
- 試圖定位一個(gè)能解釋給定 URL 的驅(qū)動(dòng)器。
- getDrivers()
- 計(jì)算當(dāng)前已選取的所有 JDBC 驅(qū)動(dòng)器數(shù)目,這些驅(qū)動(dòng)器是當(dāng)前調(diào)用者正在訪問的,并返回該數(shù)值。
- getLoginTimeout()
- 獲取所有驅(qū)動(dòng)器試圖在一個(gè)數(shù)據(jù)庫(kù)記錄日志時(shí)能夠等待的最長(zhǎng)的以秒表示的時(shí)間。
- getLogStream()
- 獲取 DriverManager 和所有驅(qū)動(dòng)器使用的用于日志記錄的/跟蹤的 PrintStream。
- println(String)
- 打印一個(gè)消息到當(dāng)前的 JDBC 日志流
- registerDriver(Driver)
- 新選取的驅(qū)動(dòng)器類必須調(diào)用 registerDriver 以告知 DriverManager
。
- setLoginTimeout(int)
- 設(shè)置所有驅(qū)動(dòng)器試圖在一個(gè)數(shù)據(jù)庫(kù)記錄日志時(shí)能夠等待的以秒表示的時(shí)間。
- setLogStream(PrintStream)
- 獲取 DriverManager 和所有驅(qū)動(dòng)器使用的用于日志記錄的/跟蹤的 PrintStream。
方法
getConnection
public static synchronized Connection getConnection(String url,
Properties info) throws SQLException
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
DriverManager 試圖從已注冊(cè)的 JDBC 驅(qū)動(dòng)器集合中選擇一個(gè)適當(dāng)?shù)尿?qū)動(dòng)器。
- 參數(shù):
- url - 一個(gè)形式為 jdbc:subprotocol:subname 的統(tǒng)一資源定位器數(shù)據(jù)庫(kù)。
- info - 作為連接參數(shù)的任意字符串標(biāo)記對(duì)/值對(duì)列表;通常至少應(yīng)包括“用戶”和“口令”特性
- 返回值:
- 到 URL 的一個(gè)連接
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
getConnection
public static synchronized Connection getConnection(String url,
String user,
String password) throws SQLException
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
DriverManage 試圖從已注冊(cè)的 JDBC 驅(qū)動(dòng)器集合中選擇一個(gè)恰當(dāng)?shù)尿?qū)動(dòng)器。
- 參數(shù):
- url - 一個(gè)形式為 jdbc:subprotocol:subname 的統(tǒng)一資源定位器數(shù)據(jù)庫(kù)。
- user -數(shù)據(jù)庫(kù)用戶,他執(zhí)行了成功連接
- password - 用戶口令
- 返回值:
- 到 URL 的一個(gè)連接
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
getConnection
public static synchronized Connection getConnection(String url) throws SQLException
- 試圖與給定的 URL 數(shù)據(jù)庫(kù)建立連接。
DriverManager 試圖從已注冊(cè)的 JDBC 驅(qū)動(dòng)器集合中選擇一個(gè)適當(dāng)?shù)尿?qū)動(dòng)器。
- 參數(shù):
- url - 一個(gè)形式為 jdbc:subprotocol:subname 的統(tǒng)一資源定位器數(shù)據(jù)庫(kù)。
- 返回值:
- 到 URL 的一個(gè)連接
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
getDriver
public static Driver getDriver(String url) throws SQLException
- 試圖定位能解釋給定 URL 的驅(qū)動(dòng)器。
DriverManager 試圖從已注冊(cè)的 JDBC 驅(qū)動(dòng)器集合中選擇一個(gè)適當(dāng)?shù)尿?qū)動(dòng)器。
- 參數(shù):
- url - 一個(gè)格式為
jdbc:subprotocol:subname 的統(tǒng)一資源定位器數(shù)據(jù)庫(kù)。
- 返回值:
- 能連接到統(tǒng)一資源定位器的驅(qū)動(dòng)器
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
registerDriver
public static synchronized void registerDriver(Driver driver) throws SQLException
- 新選取的驅(qū)動(dòng)器類必須調(diào)用 registerDriver 以告知 DriverManager 。
- 參數(shù):
- driver - 新建的 JDBC 驅(qū)動(dòng)器
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
deregisterDriver
public static void deregisterDriver(Driver driver) throws SQLException
- 從 DriverManager 列表中刪掉一個(gè)驅(qū)動(dòng)器。 Applets 只能從它們的類加載器中注銷驅(qū)動(dòng)器。
- 參數(shù):
- driver - 要?jiǎng)h掉的 JDBC 驅(qū)動(dòng)器
- 拋出:
SQLException
- 如果發(fā)生了數(shù)據(jù)訪問錯(cuò)誤。
getDrivers
public static Enumeration getDrivers()
- 計(jì)算當(dāng)前已選取的所有 JDBC 驅(qū)動(dòng)器數(shù)目,這些驅(qū)動(dòng)器是當(dāng)前調(diào)用者正在訪問的,并返回該數(shù)值。
注釋: 通過使用 d.getClass().getName()
能查找驅(qū)動(dòng)程序的類名
- 返回值:
- 調(diào)用者的類選取器已選取的 JDBC 驅(qū)動(dòng)器列表
setLoginTimeout
public static void setLoginTimeout(int seconds)
- 獲得所有驅(qū)動(dòng)器試圖在一個(gè)數(shù)據(jù)庫(kù)記錄日志時(shí)能夠等待的最長(zhǎng)的以秒表示的時(shí)間。
- 參數(shù):
- seconds - 驅(qū)動(dòng)器登錄時(shí)間限制
getLoginTimeout
public static int getLoginTimeout()
- 獲得所有驅(qū)動(dòng)器試圖在一個(gè)數(shù)據(jù)庫(kù)記錄日志時(shí)能夠等待的最長(zhǎng)的以秒表示的時(shí)間。
- 返回值:
- 驅(qū)動(dòng)器登錄時(shí)間限制
setLogStream
public static void setLogStream(PrintStream out)
- 獲取 DriverManager 和所有驅(qū)動(dòng)器使用的用于日志記錄的/跟蹤的
PrintStream 。
- 參數(shù):
- out - 新建用于日志記錄/跟蹤的 PrintStream ;若禁止,則設(shè)為空值。
getLogStream
public static PrintStream getLogStream()
- 獲取 DriverManager 和所有驅(qū)動(dòng)器使用的用于日志記錄的/跟蹤的
PrintStream 。
- 返回值:
- 用于日志記錄的 PrintStream ;如果不可用,則為空值。
println
public static void println(String message)
- 打印一個(gè)消息到當(dāng)前 JDBC 日志流
- 參數(shù):
- message -日志或跟蹤消息