public interface Driver
java.sql.Driver |
每个驱动程序类必须实现的接口。
Java SQL框架允许多个数据库驱动程序。
每个驱动程序都应提供一个实现Driver接口的类。
DriverManager将尝试加载尽可能多的驱动程序,然后对于任何给定的连接请求,它会依次询问每个驱动程序以尝试连接到目标URL。
强烈建议每个驱动程序类应该很小并且是独立的,这样可以加载和查询驱动程序类,而不需要引入大量的支持代码。
当加载一个Driver类时,它应该创建它自己的一个实例并将其注册到DriverManager。 这意味着用户可以通过调用来加载和注册驱动程序
Class.forName("foo.bah.Driver")
也可以看看:
Public methods |
|
---|---|
abstract boolean |
acceptsURL(String url) 检索驱动程序是否认为它可以打开与给定URL的连接。 |
abstract Connection |
connect(String url, Properties info) 尝试与给定的URL建立数据库连接。 |
abstract int |
getMajorVersion() 检索驱动程序的主版本号。 |
abstract int |
getMinorVersion() 获取驱动程序的次要版本号。 |
abstract DriverPropertyInfo[] |
getPropertyInfo(String url, Properties info) 获取有关此驱动程序的可能属性的信息。 |
abstract boolean |
jdbcCompliant() 报告此驱动程序是否是真正的JDBC Compliant TM驱动程序。 |
boolean acceptsURL (String url)
检索驱动程序是否认为它可以打开与给定URL的连接。 通常,驱动程序将返回true
如果他们了解在URL中指定的子协议false
,如果他们不这样做。
Parameters | |
---|---|
url |
String : the URL of the database |
Returns | |
---|---|
boolean |
true if this driver understands the given URL; false otherwise |
Throws | |
---|---|
SQLException |
if a database access error occurs |
Connection connect (String url, Properties info)
尝试与给定的URL建立数据库连接。 如果驱动程序意识到连接到给定的URL是错误的驱动程序,则应该返回“null”。 这是很常见的,因为当要求JDBC驱动程序管理器连接到给定的URL时,会依次将URL传递给每个加载的驱动程序。
如果驱动程序是连接到给定URL的正确驱动程序,但该驱动程序应该抛出 SQLException
,但无法连接到数据库。
java.util.Properties
参数可用于传递任意字符串标记/值对作为连接参数。 通常,至少“用户”和“密码”属性应该包含在Properties
对象中。
Parameters | |
---|---|
url |
String : the URL of the database to which to connect |
info |
Properties : a list of arbitrary string tag/value pairs as connection arguments. Normally at least a "user" and "password" property should be included. |
Returns | |
---|---|
Connection |
a Connection object that represents a connection to the URL |
Throws | |
---|---|
SQLException |
if a database access error occurs |
int getMajorVersion ()
检索驱动程序的主版本号。 最初这应该是1。
Returns | |
---|---|
int |
this driver's major version number |
int getMinorVersion ()
获取驱动程序的次要版本号。 最初这应该是0。
Returns | |
---|---|
int |
this driver's minor version number |
DriverPropertyInfo[] getPropertyInfo (String url, Properties info)
获取有关此驱动程序的可能属性的信息。
getPropertyInfo
方法旨在允许通用的GUI工具来发现它应该提示人类为了获得足够的信息来连接到数据库的属性。 请注意,根据人类迄今提供的值,可能需要getPropertyInfo
,因此可能需要重复执行几次getPropertyInfo
方法的调用。
Parameters | |
---|---|
url |
String : the URL of the database to which to connect |
info |
Properties : a proposed list of tag/value pairs that will be sent on connect open |
Returns | |
---|---|
DriverPropertyInfo[] |
an array of DriverPropertyInfo objects describing possible properties. This array may be an empty array if no properties are required. |
Throws | |
---|---|
SQLException |
if a database access error occurs |
boolean jdbcCompliant ()
报告此驱动程序是否是真正的JDBC Compliant TM驱动程序。 如果驱动程序通过了JDBC兼容性测试, true
这里只能报告true
; 否则需要退回false
。
JDBC合规性要求完全支持JDBC API并完全支持SQL 92 Entry Level。 预计符合JDBC的驱动程序将适用于所有主要的商业数据库。
此方法不是为了鼓励开发非JDBC兼容的驱动程序,而是认识到一些供应商有兴趣使用JDBC API和框架来实现不支持完整数据库功能的轻量级数据库或特殊数据库如SQL实现可能不可行的文档信息检索。
Returns | |
---|---|
boolean |
true if this driver is JDBC Compliant; false otherwise |