public class BasicDataSourceFactory
extends java.lang.Object
implements javax.naming.spi.ObjectFactory
JNDI object factory that creates an instance of
BasicDataSource
that has been configured based on the
RefAddr
values of the specified Reference
,
which must match the names and data types of the
BasicDataSource
bean properties.
Modifier and Type | Field and Description |
---|---|
private static java.lang.String[] |
ALL_PROPERTIES |
private static java.lang.String |
PROP_ACCESSTOUNDERLYINGCONNECTIONALLOWED |
private static java.lang.String |
PROP_CONNECTIONPROPERTIES |
private static java.lang.String |
PROP_DEFAULTAUTOCOMMIT |
private static java.lang.String |
PROP_DEFAULTCATALOG |
private static java.lang.String |
PROP_DEFAULTREADONLY |
private static java.lang.String |
PROP_DEFAULTTRANSACTIONISOLATION |
private static java.lang.String |
PROP_DRIVERCLASSNAME |
private static java.lang.String |
PROP_INITCONNECTIONSQLS
The property name for initConnectionSqls.
|
private static java.lang.String |
PROP_INITIALSIZE |
private static java.lang.String |
PROP_LOGABANDONED |
private static java.lang.String |
PROP_MAXACTIVE |
private static java.lang.String |
PROP_MAXIDLE |
private static java.lang.String |
PROP_MAXOPENPREPAREDSTATEMENTS |
private static java.lang.String |
PROP_MAXWAIT |
private static java.lang.String |
PROP_MINEVICTABLEIDLETIMEMILLIS |
private static java.lang.String |
PROP_MINIDLE |
private static java.lang.String |
PROP_NUMTESTSPEREVICTIONRUN |
private static java.lang.String |
PROP_PASSWORD |
private static java.lang.String |
PROP_POOLPREPAREDSTATEMENTS |
private static java.lang.String |
PROP_REMOVEABANDONED |
private static java.lang.String |
PROP_REMOVEABANDONEDTIMEOUT |
private static java.lang.String |
PROP_TESTONBORROW |
private static java.lang.String |
PROP_TESTONRETURN |
private static java.lang.String |
PROP_TESTWHILEIDLE |
private static java.lang.String |
PROP_TIMEBETWEENEVICTIONRUNSMILLIS |
private static java.lang.String |
PROP_URL |
private static java.lang.String |
PROP_USERNAME |
private static java.lang.String |
PROP_VALIDATIONQUERY |
private static java.lang.String |
PROP_VALIDATIONQUERY_TIMEOUT |
Constructor and Description |
---|
BasicDataSourceFactory() |
Modifier and Type | Method and Description |
---|---|
static javax.sql.DataSource |
createDataSource(java.util.Properties properties)
Creates and configures a
BasicDataSource instance based on the
given properties. |
java.lang.Object |
getObjectInstance(java.lang.Object obj,
javax.naming.Name name,
javax.naming.Context nameCtx,
java.util.Hashtable environment)
Create and return a new
BasicDataSource instance. |
private static java.util.Properties |
getProperties(java.lang.String propText)
Parse properties from the string.
|
private static final java.lang.String PROP_DEFAULTAUTOCOMMIT
private static final java.lang.String PROP_DEFAULTREADONLY
private static final java.lang.String PROP_DEFAULTTRANSACTIONISOLATION
private static final java.lang.String PROP_DEFAULTCATALOG
private static final java.lang.String PROP_DRIVERCLASSNAME
private static final java.lang.String PROP_MAXACTIVE
private static final java.lang.String PROP_MAXIDLE
private static final java.lang.String PROP_MINIDLE
private static final java.lang.String PROP_INITIALSIZE
private static final java.lang.String PROP_MAXWAIT
private static final java.lang.String PROP_TESTONBORROW
private static final java.lang.String PROP_TESTONRETURN
private static final java.lang.String PROP_TIMEBETWEENEVICTIONRUNSMILLIS
private static final java.lang.String PROP_NUMTESTSPEREVICTIONRUN
private static final java.lang.String PROP_MINEVICTABLEIDLETIMEMILLIS
private static final java.lang.String PROP_TESTWHILEIDLE
private static final java.lang.String PROP_PASSWORD
private static final java.lang.String PROP_URL
private static final java.lang.String PROP_USERNAME
private static final java.lang.String PROP_VALIDATIONQUERY
private static final java.lang.String PROP_VALIDATIONQUERY_TIMEOUT
private static final java.lang.String PROP_INITCONNECTIONSQLS
private static final java.lang.String PROP_ACCESSTOUNDERLYINGCONNECTIONALLOWED
private static final java.lang.String PROP_REMOVEABANDONED
private static final java.lang.String PROP_REMOVEABANDONEDTIMEOUT
private static final java.lang.String PROP_LOGABANDONED
private static final java.lang.String PROP_POOLPREPAREDSTATEMENTS
private static final java.lang.String PROP_MAXOPENPREPAREDSTATEMENTS
private static final java.lang.String PROP_CONNECTIONPROPERTIES
private static final java.lang.String[] ALL_PROPERTIES
public java.lang.Object getObjectInstance(java.lang.Object obj, javax.naming.Name name, javax.naming.Context nameCtx, java.util.Hashtable environment) throws java.lang.Exception
Create and return a new BasicDataSource
instance. If no
instance can be created, return null
instead.
getObjectInstance
in interface javax.naming.spi.ObjectFactory
obj
- The possibly null object containing location or
reference information that can be used in creating an objectname
- The name of this object relative to nameCtx
nameCtx
- The context relative to which the name
parameter is specified, or null
if name
is relative to the default initial contextenvironment
- The possibly null environment that is used in
creating this objectjava.lang.Exception
- if an exception occurs creating the instancepublic static javax.sql.DataSource createDataSource(java.util.Properties properties) throws java.lang.Exception
BasicDataSource
instance based on the
given properties.properties
- the datasource configuration propertiesjava.lang.Exception
- if an error occurs creating the data sourceprivate static java.util.Properties getProperties(java.lang.String propText) throws java.lang.Exception
Parse properties from the string. Format of the string must be [propertyName=property;]*
propText
- java.lang.Exception