Class SharedPoolDataSource
java.lang.Object
org.apache.commons.dbcp2.datasources.InstanceKeyDataSource
org.apache.commons.dbcp2.datasources.SharedPoolDataSource
- All Implemented Interfaces:
Serializable, AutoCloseable, Wrapper, Referenceable, CommonDataSource, DataSource
A pooling DataSource appropriate for deployment within
J2EE environment. There are many configuration options, most of which are
defined in the parent class. All users (based on username) share a single
maximum number of Connections in this datasource.
User passwords can be changed without re-initializing the datasource.
When a getConnection(username, password) request is processed
with a password that is different from those used to create connections in the
pool associated with username, an attempt is made to create a
new connection using the supplied password and if this succeeds, idle connections
created using the old password are destroyed and new connections are created
using the new password.
- Since:
- 2.0
- Version:
- $Id: SharedPoolDataSource.java 1649430 2015-01-04 21:29:32Z tn $
- Author:
- John D. McNally
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close pool being maintained by this datasource.intSetBaseGenericObjectPool.getMaxTotal()for this pool.intGet the number of active connections in the pool.intGet the number of idle connections in the pool.Returns aSharedPoolDataSourceReference.voidsetMaxTotal(int maxTotal) GetBaseGenericObjectPool.getMaxTotal()for this pool.Methods inherited from class InstanceKeyDataSource
getConnection, getConnection, getConnectionPoolDataSource, getDataSourceName, getDefaultBlockWhenExhausted, getDefaultEvictionPolicyClassName, getDefaultLifo, getDefaultMaxIdle, getDefaultMaxTotal, getDefaultMaxWaitMillis, getDefaultMinEvictableIdleTimeMillis, getDefaultMinIdle, getDefaultNumTestsPerEvictionRun, getDefaultSoftMinEvictableIdleTimeMillis, getDefaultTestOnBorrow, getDefaultTestOnCreate, getDefaultTestOnReturn, getDefaultTestWhileIdle, getDefaultTimeBetweenEvictionRunsMillis, getDefaultTransactionIsolation, getDescription, getJndiEnvironment, getLoginTimeout, getLogWriter, getMaxConnLifetimeMillis, getParentLogger, getValidationQuery, getValidationQueryTimeout, isDefaultAutoCommit, isDefaultReadOnly, isRollbackAfterValidation, isWrapperFor, setConnectionPoolDataSource, setDataSourceName, setDefaultAutoCommit, setDefaultBlockWhenExhausted, setDefaultEvictionPolicyClassName, setDefaultLifo, setDefaultMaxIdle, setDefaultMaxTotal, setDefaultMaxWaitMillis, setDefaultMinEvictableIdleTimeMillis, setDefaultMinIdle, setDefaultNumTestsPerEvictionRun, setDefaultReadOnly, setDefaultSoftMinEvictableIdleTimeMillis, setDefaultTestOnBorrow, setDefaultTestOnCreate, setDefaultTestOnReturn, setDefaultTestWhileIdle, setDefaultTimeBetweenEvictionRunsMillis, setDefaultTransactionIsolation, setDescription, setJndiEnvironment, setLoginTimeout, setLogWriter, setMaxConnLifetimeMillis, setRollbackAfterValidation, setValidationQuery, setValidationQueryTimeout, unwrapMethods inherited from class Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface CommonDataSource
createShardingKeyBuilderMethods inherited from interface DataSource
createConnectionBuilder
-
Constructor Details
-
SharedPoolDataSource
public SharedPoolDataSource()Default no-arg constructor for Serialization
-
-
Method Details
-
close
Close pool being maintained by this datasource.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein classInstanceKeyDataSource- Throws:
Exception
-
getMaxTotal
public int getMaxTotal()SetBaseGenericObjectPool.getMaxTotal()for this pool. -
setMaxTotal
public void setMaxTotal(int maxTotal) GetBaseGenericObjectPool.getMaxTotal()for this pool. -
getNumActive
public int getNumActive()Get the number of active connections in the pool. -
getNumIdle
public int getNumIdle()Get the number of idle connections in the pool. -
getReference
Returns aSharedPoolDataSourceReference.- Throws:
NamingException
-