接口 java.sql.Driver
- public interface Driver
Java SQL 框架允許用于多個數(shù)據(jù)庫驅(qū)動程序。
每個驅(qū)動程序應(yīng)提供實現(xiàn)驅(qū)動程序接口的一個類。
DriverManager 將加載所能查找到的盡可能多的驅(qū)動程序,然后對任何給定連接請求,試著將每個驅(qū)動程序依次連接到目標(biāo) URL 。
建議每個 Driver 類都應(yīng)該短小并且獨立,以便不必引用大量支持代碼就能加載和查詢 Driver 類。
加載一個 Driver 類時,應(yīng)創(chuàng)建自身的實例并用 DriverManager 注冊。這意味著使用 Class.forName("foo.bah.Driver") 用戶就能加載和注冊一個驅(qū)動程序。
- 參見:
- DriverManager, Connection
方法索引
- acceptsURL(String)
- 若驅(qū)動程序能打開與給定 URL 的連接,則返回 true 。
- connect(String, Properties)
- 試圖與給定 URL 建立數(shù)據(jù)庫連接。
- getMajorVersion()
- 獲取驅(qū)動程序的主版本號。
- getMinorVersion()
- 獲取驅(qū)動程序的次版本號。
- getPropertyInfo(String, Properties)
-
getPropertyInfo 方法能讓通用的 GUI
工具知道應(yīng)該向用戶提示什么樣的屬性而使得用戶有足夠的信息去連接一個數(shù)據(jù)庫。
- jdbcCompliant()
- 報告驅(qū)動程序是否是真正的 JDBC COMPLIANT(tm) 驅(qū)動程序。
方法
connect
public abstract Connection connect(String url,
Properties info) throws SQLException
- 試圖建立到給定 URL 的數(shù)據(jù)庫連接。若認(rèn)識到連接給定 URL 的驅(qū)動程序是錯誤的,則該驅(qū)動程序應(yīng)返回“ null ”。通常, 當(dāng)請求 JDBC 驅(qū)動程序管理者連接到某個給定 URL 時,它依次向每個加載的驅(qū)動程序傳送 URL 。
若連接到給定 URL 的驅(qū)動程序是正確的,但連接到數(shù)據(jù)庫有困難,則該驅(qū)動程序應(yīng)引起 SQLException 。
用 java.util.Properties 參數(shù)作為連接參數(shù)可傳送任意字符串標(biāo)記/值對。通常 Properties 里至少應(yīng)包括“用戶”和“口令”特性。
- 參數(shù):
- url - 待連接的數(shù)據(jù)庫的 URL
- info - 作為連接參數(shù)的任意字符串標(biāo)記/值對的列表;通常至少應(yīng)包括“用戶”和“口令”特性
- 返回值:
- 與 URL 的一個連接
- 拋出:
SQLException
- 若發(fā)生了數(shù)據(jù)庫訪問錯誤。
acceptsURL
public abstract boolean acceptsURL(String url) throws SQLException
- 若驅(qū)動程序能打開與給定 URL 的連接,則返回 true 。若驅(qū)動程序能理解 URL 中所指定的子協(xié)議,則驅(qū)動程序返回 true ,若不能理解則返回 false 。
- 參數(shù):
- url - 數(shù)據(jù)庫的 URL
- 返回值:
- 若該驅(qū)動程序能連接到給定 URL ,則為 true 。
- 拋出:
SQLException
- 若發(fā)生了數(shù)據(jù)庫訪問錯誤。
getPropertyInfo
public abstract DriverPropertyInfo[] getPropertyInfo(String url,
Properties info) throws SQLException
-
getPropertyInfo 方法能讓通用的 GUI
工具知道應(yīng)該向用戶提示什么樣的屬性,從而使得用戶有足夠的信息去連接一個數(shù)據(jù)庫。注意:根據(jù)用戶目前所提供的數(shù)值要求,附加信息也許成為必需的了,因此可能有必要調(diào)用幾個 getPropertyInfo 來迭代。
- 參數(shù):
- url - 待連接的數(shù)據(jù)庫的 URL
- info - 連接打開時將要發(fā)送標(biāo)記/值對的建議列表。
- 返回值:
- 描述可能特性的 DriverPropertyInfo 對象數(shù)組。若無特性請求,則該數(shù)組可為空。
- 拋出:
SQLException
- 若發(fā)生了數(shù)據(jù)庫訪問錯誤。
getMajorVersion
public abstract int getMajorVersion()
- 獲取驅(qū)動程序的主版本號。初始應(yīng)為 1 。
getMinorVersion
public abstract int getMinorVersion()
- 獲取驅(qū)動程序的次版本號。初始應(yīng)為 0 。
jdbcCompliant
public abstract boolean jdbcCompliant()
- 報告驅(qū)動程序是否是真正的 JDBC COMPLIANT(tm) 的驅(qū)動程序。若驅(qū)動程序發(fā)送 JDBC 適應(yīng)測試,
則驅(qū)動程序可能只報告“ true ”,否則返回 false 。
JDBC 適應(yīng)性要求全部支持 JDBC API 和 SQL 92 輸入項級別。要求適應(yīng) JDBC 的驅(qū)動程序?qū)λ兄饕慕?jīng)濟數(shù)據(jù)庫是可用的。該方法不鼓勵開發(fā)不適應(yīng) JDBC 的驅(qū)動程序,但承認(rèn)有些銷售商有興趣用 JDBC API
和框架開發(fā)不支持全部數(shù)據(jù)庫功能的低開銷數(shù)據(jù)庫或某些特殊數(shù)據(jù)庫,如不能用 SQL 實現(xiàn)的文檔信息檢索。