javax.sql.DataSource interface,
configuring a plain old JDBC java.sql.Driver via bean properties, and
returning a new java.sql.Connection from every getConnection call.
NOTE: This class is not an actual connection pool; it does not actually pool Connections. It just serves as simple replacement for a full-blown connection pool, implementing the same standard interface, but creating new Connections on every call.
In a Jakarta EE container, it is recommended to use a JNDI DataSource provided by
the container. Such a DataSource can be exposed as a DataSource bean in a Spring
ApplicationContext via org.,
for seamless switching to and from a local DataSource bean like this class.
This SimpleDriverDataSource class was originally designed alongside
Apache Commons DBCP
and C3P0, featuring bean-style
BasicDataSource/ComboPooledDataSource classes with configuration
properties for local resource setups. For a modern JDBC connection pool, consider
HikariCP instead,
exposing a corresponding HikariDataSource instance to the application.
DriverManagerDataSource
| Access | Constructor and Description |
|---|---|
| public | |
| public | SimpleDriverDataSource(Driver
the JDBC Driver object driver, String the JDBC URL to use for accessing the DriverManager url)Create a new DriverManagerDataSource with the given standard Driver parameters. |
| public | SimpleDriverDataSource(Driver
the JDBC Driver object driver, String the JDBC URL to use for accessing the DriverManager url, String the JDBC username to use for accessing the DriverManager username, String the JDBC password to use for accessing the DriverManager password)Create a new DriverManagerDataSource with the given standard Driver parameters. |
| public | SimpleDriverDataSource(Driver
the JDBC Driver object driver, String the JDBC URL to use for accessing the DriverManager url, Properties the JDBC connection properties conProps)Create a new DriverManagerDataSource with the given standard Driver parameters. |
| Modifier and Type | Method and Description |
|---|---|
| protected Connection | getConnectionFromDriver(Properties
the merged connection properties props)Implements abstract org. Obtain a Connection using the given properties. |
| public Driver | |
| public void | |
| public void | setDriverClass(Class<? extends Driver> driverClass)
Specify the JDBC Driver implementation class to use. |
| driver | back to summary |
|---|---|
| private Driver driver
| |
| SimpleDriverDataSource | back to summary |
|---|---|
| public SimpleDriverDataSource() Constructor for bean-style configuration. | |
| SimpleDriverDataSource | back to summary |
|---|---|
| public SimpleDriverDataSource(Driver driver, String url) Create a new DriverManagerDataSource with the given standard Driver parameters.
| |
| SimpleDriverDataSource | back to summary |
|---|---|
| public SimpleDriverDataSource(Driver driver, String url, String username, String password) Create a new DriverManagerDataSource with the given standard Driver parameters.
| |
| SimpleDriverDataSource | back to summary |
|---|---|
| public SimpleDriverDataSource(Driver driver, String url, Properties conProps) Create a new DriverManagerDataSource with the given standard Driver parameters.
| |
| getConnectionFromDriver | back to summary |
|---|---|
| protected Connection getConnectionFromDriver(Properties props) throws SQLException Implements abstract org. Doc from org. Obtain a Connection using the given properties. Template method to be implemented by subclasses.
| |
| getDriver | back to summary |
|---|---|
| public Driver getDriver() Return the JDBC Driver instance to use.
| |
| setDriver | back to summary |
|---|---|
| public void setDriver(Driver driver) Specify the JDBC Driver instance to use. This allows for passing in a shared, possibly pre-configured Driver instance.
| |
| setDriverClass | back to summary |
|---|---|
| public void setDriverClass(Class<? extends Driver> driverClass) Specify the JDBC Driver implementation class to use. An instance of this Driver class will be created and held within the SimpleDriverDataSource.
| |