Java Platform 1.2
Beta 4

Class java.sql.DriverManager

java.lang.Object
  |
  +--java.sql.DriverManager

public class DriverManager
extends Object

The DriverManager provides a basic service for managing a set of JDBC drivers.

As part of its initialization, the DriverManager class will attempt to load the driver classes referenced in the "jdbc.drivers" system property. This allows a user to customize the JDBC Drivers used by their applications. For example in your ~/.hotjava/properties file you might specify: jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver A program can also explicitly load JDBC drivers at any time. For example, the my.sql.Driver is loaded with the following statement: Class.forName("my.sql.Driver");

When getConnection is called the DriverManager will attempt to locate a suitable driver from amongst those loaded at initialization and those loaded explicitly using the same classloader as the current applet or application.

See Also:
Driver, Connection

Method Summary
static void deregisterDriver(Driver driver)
          Drop a Driver from the DriverManager's list.
static Connection getConnection(String url, Properties info)
          Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
static Connection getConnection(String url, String user, String password)
          Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
static Connection getConnection(String url)
          Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
static Driver getDriver(String url)
          Attempt to locate a driver that understands the given URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
static Enumeration getDrivers()
          Return an Enumeration of all the currently loaded JDBC drivers which the current caller has access to.
static int getLoginTimeout()
          Get the maximum time in seconds that all drivers can wait when attempting to log in to a database.
static PrintStream getLogStream()
          Deprecated.  
static PrintWriter getLogWriter()
          JDBC 2.0 Get the log writer.
static void println(String message)
          Print a message to the current JDBC log stream
static void registerDriver(Driver driver)
          A newly loaded driver class should call registerDriver to make itself known to the DriverManager.
static void setLoginTimeout(int seconds)
          Set the maximum time in seconds that all drivers can wait when attempting to log in to a database.
static void setLogStream(PrintStream out)
          Deprecated.  
static void setLogWriter(PrintWriter out)
          JDBC 2.0 Set the logging/tracing Writer that is used by the DriverManager and all drivers.
 
Methods inherited from class java.lang.Object
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

Method Detail

getLogWriter

public static PrintWriter getLogWriter()
JDBC 2.0 Get the log writer. The getLogWriter() and setLogWriter() methods should be used instead of the old get/setlogStream() methods.

setLogWriter

public static void setLogWriter(PrintWriter out)
JDBC 2.0 Set the logging/tracing Writer that is used by the DriverManager and all drivers. There is a minor versioning problem introduced by the introduction of setLogWriter(). SetLogWriter() can not create a PrintStream that will be returned by getLogStream()---the Java platform does not provide a backward conversion. So, a new application that uses setLogWriter() and also uses a JDBC 1.0 driver that uses getLogStream() will likely not see debugging information written by that driver.
Parameters:
out - the new logging/tracing PrintStream; to disable, set to null

getConnection

public static Connection getConnection(String url,
                                       Properties info)
                                throws SQLException
Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
Parameters:
url - a database url of the form jdbc:subprotocol:subname
info - a list of arbitrary string tag/value pairs as connection arguments; normally at least a "user" and "password" property should be included
Returns:
a Connection to the URL
Throws:
SQLException - if a database-access error occurs.

getConnection

public static Connection getConnection(String url,
                                       String user,
                                       String password)
                                throws SQLException
Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
Parameters:
url - a database url of the form jdbc:subprotocol:subname
user - the database user on whose behalf the Connection is being made
password - the user's password
Returns:
a Connection to the URL
Throws:
SQLException - if a database-access error occurs.

getConnection

public static Connection getConnection(String url)
                                throws SQLException
Attempt to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
Parameters:
url - a database url of the form jdbc:subprotocol:subname
Returns:
a Connection to the URL
Throws:
SQLException - if a database-access error occurs.

getDriver

public static Driver getDriver(String url)
                        throws SQLException
Attempt to locate a driver that understands the given URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers.
Parameters:
url - a database url of the form jdbc:subprotocol:subname
Returns:
a Driver that can connect to the URL
Throws:
SQLException - if a database-access error occurs.

registerDriver

public static void registerDriver(Driver driver)
                           throws SQLException
A newly loaded driver class should call registerDriver to make itself known to the DriverManager.
Parameters:
driver - the new JDBC Driver
Throws:
SQLException - if a database-access error occurs.

deregisterDriver

public static void deregisterDriver(Driver driver)
                             throws SQLException
Drop a Driver from the DriverManager's list. Applets can only deregister Drivers from their own classloader.
Parameters:
driver - the JDBC Driver to drop
Throws:
SQLException - if a database-access error occurs.

getDrivers

public static Enumeration getDrivers()
Return an Enumeration of all the currently loaded JDBC drivers which the current caller has access to.

Note: The classname of a driver can be found using d.getClass().getName()

Returns:
the list of JDBC Drivers loaded by the caller's class loader

setLoginTimeout

public static void setLoginTimeout(int seconds)
Set the maximum time in seconds that all drivers can wait when attempting to log in to a database.
Parameters:
seconds - the driver login time limit

getLoginTimeout

public static int getLoginTimeout()
Get the maximum time in seconds that all drivers can wait when attempting to log in to a database.
Returns:
the driver login time limit

setLogStream

public static void setLogStream(PrintStream out)
Deprecated.  
Set the logging/tracing PrintStream that is used by the DriverManager and all drivers.
Parameters:
out - the new logging/tracing PrintStream; to disable, set to null

getLogStream

public static PrintStream getLogStream()
Deprecated.  
Get the logging/tracing PrintStream that is used by the DriverManager and all drivers.
Returns:
the logging/tracing PrintStream; if disabled, is null

println

public static void println(String message)
Print a message to the current JDBC log stream
Parameters:
message - a log or tracing message

Java Platform 1.2
Beta 4

Submit a bug or feature
Submit comments/suggestions about new javadoc look
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.
This documentation was generated with a post-Beta4 version of Javadoc.