Package org.h2

# Class Driver

java.lang.Object
org.h2.Driver

All Implemented Interfaces:
  `Driver`

public class Driver extends Object implements Driver
The database driver. An application should not use this class directly. The only thing the application needs to do is load the driver. This can be done using Class.forName. To load the driver and open a database connection, use the following code:

     Class.forName("org.h2.Driver");
     Connection conn = DriverManager.getConnection(
          "jdbc:h2:˜/test", "sa", "sa");

## Constructor Summary

Constructors
Constructor
Description
`Driver()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`acceptsURL(String url)`
Check if the driver understands this URL.
`Connection`
`connect(String url, Properties info)`
Open a database connection.
`int`
`getMajorVersion()`
Get the major version number of the driver.
`int`
`getMinorVersion()`
Get the minor version number of the driver.
`Logger`
`getParentLogger()`
[Not supported]
`DriverPropertyInfo[]`
`getPropertyInfo(String url, Properties info)`
Get the list of supported properties.
`boolean`
`jdbcCompliant()`
Check if this driver is compliant to the JDBC specification.
`static Driver`
`load()`
INTERNAL
`static void`
`setDefaultConnection(Connection c)`
INTERNAL Sets, on a per-thread basis, the default-connection for user-defined functions.
`static void`
`setThreadContextClassLoader(Thread thread)`
INTERNAL
`static void`
`unload()`
INTERNAL

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Driver

public Driver()

## Method Details

### connect

public Connection connect(String url, Properties info) throws SQLException
Open a database connection. This method should not be called by an application. Instead, the method DriverManager.getConnection should be used.

Specified by:
  `connect` in interface `Driver`
Parameters:
  `url` - the database URL
  `info` - the connection properties
Returns:
  the new connection or null if the URL is not supported
Throws:
  `SQLException` - on connection exception or if URL is `null`

### acceptsURL

public boolean acceptsURL(String url) throws SQLException
Check if the driver understands this URL. This method should not be called by an application.

Specified by:
  `acceptsURL` in interface `Driver`
Parameters:
  `url` - the database URL
Returns:
  if the driver understands the URL
Throws:
  `SQLException` - if URL is `null`

### getMajorVersion

public int getMajorVersion()
Get the major version number of the driver. This method should not be called by an application.

Specified by:
  `getMajorVersion` in interface `Driver`
Returns:
  the major version number

### getMinorVersion

public int getMinorVersion()
Get the minor version number of the driver. This method should not be called by an application.

Specified by:
  `getMinorVersion` in interface `Driver`
Returns:
  the minor version number

### getPropertyInfo

public DriverPropertyInfo[] getPropertyInfo(String url, Properties info)
Get the list of supported properties. This method should not be called by an application.

Specified by:
  `getPropertyInfo` in interface `Driver`
Parameters:
  `url` - the database URL
  `info` - the connection properties
Returns:
  a zero length array

### jdbcCompliant

public boolean jdbcCompliant()
Check if this driver is compliant to the JDBC specification. This method should not be called by an application.

Specified by:
  `jdbcCompliant` in interface `Driver`
Returns:
  true

### getParentLogger

public Logger getParentLogger()
[Not supported]

Specified by:
  `getParentLogger` in interface `Driver`

### load

public static Driver load()
INTERNAL

Returns:
  instance of the driver registered with the DriverManager

### unload

public static void unload()
INTERNAL

### setDefaultConnection

public static void setDefaultConnection(Connection c)
INTERNAL Sets, on a per-thread basis, the default-connection for user-defined functions.

Parameters:
  `c` - to set default to

### setThreadContextClassLoader

public static void setThreadContextClassLoader(Thread thread)
INTERNAL

Parameters:
  `thread` - to set context class loader for