- java.lang.Object
-
- org.tentackle.sql.DynamicDriver
-
- All Implemented Interfaces:
java.sql.Driver
public class DynamicDriver extends java.lang.Object implements java.sql.DriverLoads a JDBC driver dynamically at runtime via a URL.
Because DriverManager will refuse to use a driver not loaded by the system-classloader, we must wrap the URL-loaded driver by such a class.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanacceptsURL(java.lang.String url)java.sql.Connectionconnect(java.lang.String url, java.util.Properties info)intgetMajorVersion()intgetMinorVersion()java.util.logging.LoggergetParentLogger()java.sql.DriverPropertyInfo[]getPropertyInfo(java.lang.String url, java.util.Properties info)booleanjdbcCompliant()static java.sql.Driverload(java.lang.String name)Loads a JDBC driver dynamically.
The name consists of the driver's classname, followed by a colon, followed by the URL to load it.
Example:static voidunload(java.sql.Driver driver)Unloads the driver.
-
-
-
Method Detail
-
load
public static java.sql.Driver load(java.lang.String name)
Loads a JDBC driver dynamically.
The name consists of the driver's classname, followed by a colon, followed by the URL to load it.
Example:org.postgresql.Driver:jar:file:/usr/share/java/postgresql.jar!/
- Parameters:
name- the driver classname and loading url- Returns:
- the loaded driver, never null
-
unload
public static void unload(java.sql.Driver driver)
Unloads the driver.- Parameters:
driver- the driver previously loaded viaload(String)
-
connect
public java.sql.Connection connect(java.lang.String url, java.util.Properties info) throws java.sql.SQLException- Specified by:
connectin interfacejava.sql.Driver- Throws:
java.sql.SQLException
-
acceptsURL
public boolean acceptsURL(java.lang.String url) throws java.sql.SQLException- Specified by:
acceptsURLin interfacejava.sql.Driver- Throws:
java.sql.SQLException
-
getPropertyInfo
public java.sql.DriverPropertyInfo[] getPropertyInfo(java.lang.String url, java.util.Properties info) throws java.sql.SQLException- Specified by:
getPropertyInfoin interfacejava.sql.Driver- Throws:
java.sql.SQLException
-
getMajorVersion
public int getMajorVersion()
- Specified by:
getMajorVersionin interfacejava.sql.Driver
-
getMinorVersion
public int getMinorVersion()
- Specified by:
getMinorVersionin interfacejava.sql.Driver
-
jdbcCompliant
public boolean jdbcCompliant()
- Specified by:
jdbcCompliantin interfacejava.sql.Driver
-
getParentLogger
public java.util.logging.Logger getParentLogger() throws java.sql.SQLFeatureNotSupportedException- Specified by:
getParentLoggerin interfacejava.sql.Driver- Throws:
java.sql.SQLFeatureNotSupportedException
-
-