The DriverManager will try to load as many drivers as it can find and then for any given connection request, it will ask each driver in turn to try to connect to the target URL.
It is strongly recommended that each Driver class should be small and standalone so that the Driver class can be loaded and queried without bringing in vast quantities of supporting code.
When a Driver class is loaded, it should create an instance of itself and register it with the DriverManager. This means that a user can load and register a driver by doing Class.forName("foo.bar.Driver").
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | Returns: true if this driver accepts the given URL.the URL of the driver. url)Implements java. Typically, drivers will return true if they understand the subprotocol specified in the URL and false if they don't. |
| public Connection | Returns: a connection to the URL or null if it isn't us.the URL of the database to connect to. url, Properties a list of arbitrary tag/value pairs as connection arguments. info)Implements java. Try to make a database connection to the given URL. |
| public int | getMajorVersion()
Implements java. Retrieves the driver's major version number. |
| pack-priv static int | Returns: the drivers major version numberGets the drivers major version number. |
| public int | getMinorVersion()
Implements java. Gets the driver's minor version number. |
| pack-priv static int | Returns: the drivers minor version numberGet the drivers minor version number. |
| public static String | Returns: the transformed, standardized OS nameStandardizes OS name information to align with other drivers/clients for MySQL connection attributes. |
| public Logger | getParentLogger()
Implements java. Return the parent Logger of all the Loggers used by this driver. |
| public static String | Returns: the transformed, standardized platform detailsStandardizes platform information to align with other drivers/clients for MySQL connection attributes. |
| public DriverPropertyInfo[] | getPropertyInfo(String
the URL of the database to which to connect url, Properties a proposed list of tag/value pairs that will be sent on
connect open info)Implements java. Gets information about the possible properties for this driver. |
| public boolean | jdbcCompliant()
Implements java. Reports whether this driver is a genuine JDBC Compliant driver. |
| NonRegisteringDriver | back to summary |
|---|---|
| public NonRegisteringDriver() throws SQLException Construct a new driver and register it with DriverManager.
| |
| acceptsURL | back to summary |
|---|---|
| public boolean acceptsURL(String url) throws SQLException Implements java. Typically, drivers will return true if they understand the subprotocol specified in the URL and false if they don't. This driver's protocols start with jdbc:mysql:
| |
| connect | back to summary |
|---|---|
| public Connection connect(String url, Properties info) throws SQLException Implements java. Try to make a database connection to the given URL. The driver should return "null" if it realizes it is the wrong kind of driver to connect to the given URL. This will be common, as when the JDBC driverManager is asked to connect to a given URL, it passes the URL to each loaded driver in turn. The driver should raise an SQLException if the URL is null or if it is the right driver to connect to the given URL, but has trouble connecting to the database. The java.util.Properties argument can be used to pass arbitrary string tag/value pairs as connection arguments. These properties take precedence over any properties sent in the URL. MySQL protocol takes the form: jdbc:mysql://host:port/database.
| |
| getMajorVersion | back to summary |
|---|---|
| public int getMajorVersion() Implements java. Doc from java. Retrieves the driver's major version number. Initially this should be 1.
| |
| getMajorVersionInternal | back to summary |
|---|---|
| pack-priv static int getMajorVersionInternal() Gets the drivers major version number.
| |
| getMinorVersion | back to summary |
|---|---|
| public int getMinorVersion() Implements java. Doc from java. Gets the driver's minor version number. Initially this should be 0.
| |
| getMinorVersionInternal | back to summary |
|---|---|
| pack-priv static int getMinorVersionInternal() Get the drivers minor version number.
| |
| getOSName | back to summary |
|---|---|
| public static String getOSName() Standardizes OS name information to align with other drivers/clients for MySQL connection attributes.
| |
| getParentLogger | back to summary |
|---|---|
| public Logger getParentLogger() throws SQLFeatureNotSupportedException Implements java. Doc from java. Return the parent Logger of all the Loggers used by this driver. This should be the Logger farthest from the root Logger that is still an ancestor of all of the Loggers used by this driver. Configuring this Logger will affect all of the log messages generated by the driver. In the worst case, this may be the root Logger.
| |
| getPlatform | back to summary |
|---|---|
| public static String getPlatform() Standardizes platform information to align with other drivers/clients for MySQL connection attributes.
| |
| getPropertyInfo | back to summary |
|---|---|
| public DriverPropertyInfo[] getPropertyInfo(String url, Properties info) throws SQLException Implements java. Doc from java. Gets information about the possible properties for this driver.
The
| |
| jdbcCompliant | back to summary |
|---|---|
| public boolean jdbcCompliant() Implements java. Doc from java. Reports whether this driver is a genuine JDBC
Compliant driver.
A driver may only report JDBC compliance requires full support for the JDBC API and full support for SQL 92 Entry Level. It is expected that JDBC compliant drivers will be available for all the major commercial databases. This method is not intended to encourage the development of non-JDBC compliant drivers, but is a recognition of the fact that some vendors are interested in using the JDBC API and framework for lightweight databases that do not support full database functionality, or for special databases such as document information retrieval where a SQL implementation may not be feasible.
| |