|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.sql.DriverManager
public class DriverManager
管理一组 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 |
| 方法详细信息 |
|---|
public static PrintWriter getLogWriter()
getLogWriter 和 setLogWriter 方法,而不是使用 get/setlogStream 方法,后者已不建议使用。
java.io.PrintWriter 对象setLogWriter(java.io.PrintWriter)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 方法拒绝设置记录写入器SecurityManager.checkPermission(java.security.Permission),
getLogWriter()public static Connection getConnection(String url, Properties info) throws SQLException
DriverManager 试图从已注册的驱动程序集中选择一个适当的驱动程序。
url - jdbc:subprotocol:subname 形式的数据库 urlinfo - 作为连接参数的任意字符串标记/值对的列表;通常至少应该包括 "user" 和 "password" 属性
SQLException - 如果发生数据库访问错误public static Connection getConnection(String url, String user, String password) throws SQLException
DriverManager 试图从已注册的驱动程序集中选择一个适当的驱动程序。
url - jdbc:subprotocol:subname 形式的数据库 urluser - 数据库用户,连接是为该用户建立的password - 用户的密码
SQLException - 如果发生数据库访问错误public static Connection getConnection(String url) throws SQLException
DriverManager 试图从已注册的驱动程序集中选择一个适当的驱动程序。
url - jdbc:subprotocol:subname 形式的数据库 url
SQLException - 如果发生数据库访问错误public static Driver getDriver(String url) throws SQLException
DriverManager 试图从已注册的驱动程序集中选择一个适当的驱动程序。
url - jdbc:subprotocol:subname 形式的数据库 URL
Driver 对象
SQLException - 如果发生数据库访问错误public static void registerDriver(Driver driver) throws SQLException
DriverManager 注册给定驱动程序。新加载的驱动程序类应该调用 registerDriver 方法让 DriverManager 知道自己。
driver - 将向 DriverManager 注册的新的 JDBC Driver
SQLException - 如果发生数据库访问错误public static void deregisterDriver(Driver driver) throws SQLException
DriverManager 的列表中删除一个驱动程序。applet 只能注销来自其自身的类加载器的驱动程序。
driver - 要删除的 JDBC Driver
SQLException - 如果发生数据库访问错误public static Enumeration<Driver> getDrivers()
注:驱动程序的类名称可以使用 d.getClass().getName() 得到
public static void setLoginTimeout(int seconds)
seconds - 登录时间限制,以秒为单位getLoginTimeout()public static int getLoginTimeout()
setLoginTimeout(int)@Deprecated public static void setLogStream(PrintStream out)
DriverManager 和所有驱动程序使用的记录/追踪 PrintStream。
在 Java 2 SDK 标准版 1.3 版中,此方法将查看设置记录流之前是否有 SQLPermission 对象。如果存在 SecurityManager 并且其 checkPermission 方法拒绝设置记录写入器,则此方法将抛出 java.lang.SecurityException。
out - 新的记录/追踪 PrintStream;要禁止记录和追踪,可将该参数设置为 null
SecurityException - 如果安全管理器存在并且其 checkPermission 方法拒绝设置记录流SecurityManager.checkPermission(java.security.Permission),
getLogStream()@Deprecated public static PrintStream getLogStream()
DriverManager 和所有驱动程序使用的记录/追踪 PrintStream。
nullsetLogStream(java.io.PrintStream)public static void println(String message)
message - 一条记录或追踪消息
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。