|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.sql
类 DriverManager
java.lang.Object java.sql.DriverManager
-
public class DriverManager
- extends Object
管理一组 JDBC 驱动程序的基本服务。
注:DataSource
接口是 JDBC 2.0 API 中的新增内容,它提供了连接到数据源的另一种方法。使用 DataSource
对象是连接到数据源的首选方法。
作为初始化的一部分,DriverManager
类会尝试加载在 "jdbc.drivers" 系统属性中引用的驱动程序类。这允许用户自定义由他们的应用程序使用的 JDBC Driver。例如,在 ~/.hotjava/properties 文件中,用户可以指定:
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
程序还可以在任意时间显式地加载 JDBC 驱动程序。例如,my.sql.Driver 是使用以下语句加载的:
Class.forName("my.sql.Driver");
在调用 getConnection
方法时,DriverManager
会试着从初始化时加载的那些驱动程序以及使用与当前 applet 或应用程序相同的类加载器显式加载的那些驱动程序中查找合适的驱动程序。
从 Java 2 SDK 标准版本 1.3 版开始,只有当已授予适当权限时设置记录流。通常这将使用工具 PolicyTool 完成,该工具可用于授予 permission java.sql.SQLPermission "setLog"
权限。
- 另请参见:
-
Driver
,Connection
方法摘要 | |
---|---|
static void |
deregisterDriver(Driver driver) 从 DriverManager 的列表中删除一个驱动程序。 |
static Connection |
getConnection(String url) 试图建立到给定数据库 URL 的连接。 |
static Connection |
getConnection(String url, Properties info) 试图建立到给定数据库 URL 的连接。 |
static Connection |
getConnection(String url, String user, String password) 试图建立到给定数据库 URL 的连接。 |
static Driver |
getDriver(String url) 试图查找能理解给定 URL 的驱动程序。 |
static Enumeration<Driver> |
getDrivers() 检索带有当前调用方可以访问的所有当前已加载 JDBC 驱动程序的 Enumeration。 |
static int |
getLoginTimeout() 获得驱动程序试图登录到某一数据库时可以等待的最长时间,以秒为单位。 |
static PrintStream |
getLogStream() 已过时。 |
static PrintWriter |
getLogWriter() 检索记录写入器。 |
static void |
println(String message) 将一条消息打印到当前 JDBC 记录流中。 |
static void |
registerDriver(Driver driver) 向 DriverManager 注册给定驱动程序。 |
static void |
setLoginTimeout(int seconds) 设置驱动程序试图连接到某一数据库时将等待的最长时间,以秒为单位。 |
static void |
setLogStream(PrintStream out) 已过时。 |
static void |
setLogWriter(PrintWriter out) 设置由 DriverManager 和所有驱动程序使用的记录/追踪 PrintWriter 对象。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
getLogWriter
public static PrintWriter getLogWriter()
-
检索记录写入器。应该使用
getLogWriter
和setLogWriter
方法,而不是使用get/setlogStream
方法,后者已不建议使用。 -
- 返回:
-
java.io.PrintWriter
对象 - 从以下版本开始:
- 1.2
- 另请参见:
-
setLogWriter(java.io.PrintWriter)
setLogWriter
public static void setLogWriter(PrintWriter out)
-
设置由
DriverManager
和所有驱动程序使用的记录/追踪PrintWriter
对象。存在一个因为引入
setLogWriter
方法而导致的次版本问题。setLogWriter
方法无法创建将由getLogStream
返回的PrintStream
对象,Java 版本不提供后向转换。结果,使用setLogWriter
的新应用程序以及仍然还使用利用getLogStream
的 JDBC 1.0 驱动程序的新程序很可能将无法查看由该驱动程序写入的调试信息。在 Java 2 SDK 标准版 1.3 版中,此方法将查看设置记录流之前是否有
SQLPermission
对象。如果存在SecurityManager
并且其checkPermission
方法拒绝设置记录写入器,则此方法将抛出java.lang.SecurityException
。 -
- 参数:
-
out
- 新的记录/追踪PrintStream
对象;null
表示禁止记录和追踪 - 抛出:
-
SecurityException
- 如果安全管理器存在并且其checkPermission
方法拒绝设置记录写入器 - 从以下版本开始:
- 1.2
- 另请参见:
-
SecurityManager.checkPermission(java.security.Permission)
,getLogWriter()
getConnection
public static Connection getConnection(String url, Properties info) throws SQLException
-
试图建立到给定数据库 URL 的连接。
DriverManager
试图从已注册的驱动程序集中选择一个适当的驱动程序。 -
- 参数:
-
url
-jdbc:subprotocol:subname
形式的数据库 url -
info
- 作为连接参数的任意字符串标记/值对的列表;通常至少应该包括 "user" 和 "password" 属性 - 返回:
- a 到 URL 的连接
- 抛出:
-
SQLException
- 如果发生数据库访问错误
getConnection
public static Connection getConnection(String url, String user, String password) throws SQLException
-
试图建立到给定数据库 URL 的连接。
DriverManager
试图从已注册的驱动程序集中选择一个适当的驱动程序。 -
- 参数:
-
url
-jdbc:subprotocol:subname
形式的数据库 url -
user
- 数据库用户,连接是为该用户建立的 -
password
- 用户的密码 - 返回:
- 到 URL 的连接
- 抛出:
-
SQLException
- 如果发生数据库访问错误
getConnection
public static Connection getConnection(String url) throws SQLException
-
试图建立到给定数据库 URL 的连接。
DriverManager
试图从已注册的驱动程序集中选择一个适当的驱动程序。 -
- 参数:
-
url
-jdbc:subprotocol:subname
形式的数据库 url - 返回:
- 到 URL 的连接
- 抛出:
-
SQLException
- 如果发生数据库访问错误
getDriver
public static Driver getDriver(String url) throws SQLException
-
试图查找能理解给定 URL 的驱动程序。
DriverManager
试图从已注册的驱动程序集中选择一个适当的驱动程序。 -
- 参数:
-
url
-jdbc:subprotocol:subname
形式的数据库 URL - 返回:
-
表示可以连接到给定 URL 的驱动程序的
Driver
对象 - 抛出:
-
SQLException
- 如果发生数据库访问错误
registerDriver
public static void registerDriver(Driver driver) throws SQLException
-
向
DriverManager
注册给定驱动程序。新加载的驱动程序类应该调用registerDriver
方法让DriverManager
知道自己。 -
- 参数:
-
driver
- 将向DriverManager
注册的新的 JDBC Driver - 抛出:
-
SQLException
- 如果发生数据库访问错误