Class SharedPoolDataSource
java.lang.Object
org.apache.tomcat.dbcp.dbcp2.datasources.InstanceKeyDataSource
org.apache.tomcat.dbcp.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 user name) share a single maximum number
 of Connections in this data source.
 
 User passwords can be changed without re-initializing the data source. When a
 getConnection(user name, password) request is processed with a password that is different from those
 used to create connections in the pool associated with user name, 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
- See Also:
- 
Field SummaryFields inherited from class org.apache.tomcat.dbcp.dbcp2.datasources.InstanceKeyDataSourceUNKNOWN_TRANSACTIONISOLATION
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidclose()Closes pool being maintained by this data source.protected org.apache.tomcat.dbcp.dbcp2.datasources.PooledConnectionManagergetConnectionManager(org.apache.tomcat.dbcp.dbcp2.datasources.UserPassKey userPassKey) intGetsBaseGenericObjectPool.getMaxTotal()for this pool.intGets the number of active connections in the pool.intGets the number of idle connections in the pool.protected org.apache.tomcat.dbcp.dbcp2.datasources.PooledConnectionAndInfogetPooledConnectionAndInfo(String userName, String userPassword) This method is protected but can only be implemented in this package because PooledConnectionAndInfo is a package private type.Creates a newReferenceto aSharedPoolDataSource.voidsetMaxTotal(int maxTotal) SetsBaseGenericObjectPool.getMaxTotal()for this pool.protected voidsetupDefaults(Connection connection, String userName) protected voidtoStringFields(StringBuilder builder) Methods inherited from class org.apache.tomcat.dbcp.dbcp2.datasources.InstanceKeyDataSourceassertInitializationAllowed, getConnection, getConnection, getConnectionPoolDataSource, getDataSourceName, getDefaultBlockWhenExhausted, getDefaultDurationBetweenEvictionRuns, getDefaultEvictionPolicyClassName, getDefaultLifo, getDefaultMaxIdle, getDefaultMaxTotal, getDefaultMaxWait, getDefaultMaxWaitMillis, getDefaultMinEvictableIdleDuration, getDefaultMinEvictableIdleTimeMillis, getDefaultMinIdle, getDefaultNumTestsPerEvictionRun, getDefaultSoftMinEvictableIdleDuration, getDefaultSoftMinEvictableIdleTimeMillis, getDefaultTestOnBorrow, getDefaultTestOnCreate, getDefaultTestOnReturn, getDefaultTestWhileIdle, getDefaultTimeBetweenEvictionRunsMillis, getDefaultTransactionIsolation, getDescription, getInstanceKey, getJndiEnvironment, getLoginTimeout, getLoginTimeoutDuration, getLogWriter, getMaxConnDuration, getMaxConnLifetime, getMaxConnLifetimeMillis, getParentLogger, getValidationQuery, getValidationQueryTimeout, getValidationQueryTimeoutDuration, isDefaultAutoCommit, isDefaultReadOnly, isRollbackAfterValidation, isWrapperFor, setConnectionPoolDataSource, setDataSourceName, setDefaultAutoCommit, setDefaultBlockWhenExhausted, setDefaultDurationBetweenEvictionRuns, setDefaultEvictionPolicyClassName, setDefaultLifo, setDefaultMaxIdle, setDefaultMaxTotal, setDefaultMaxWait, setDefaultMaxWaitMillis, setDefaultMinEvictableIdle, setDefaultMinEvictableIdleTimeMillis, setDefaultMinIdle, setDefaultNumTestsPerEvictionRun, setDefaultReadOnly, setDefaultSoftMinEvictableIdle, setDefaultSoftMinEvictableIdleTimeMillis, setDefaultTestOnBorrow, setDefaultTestOnCreate, setDefaultTestOnReturn, setDefaultTestWhileIdle, setDefaultTimeBetweenEvictionRunsMillis, setDefaultTransactionIsolation, setDescription, setJndiEnvironment, setLoginTimeout, setLoginTimeout, setLogWriter, setMaxConnLifetime, setMaxConnLifetimeMillis, setRollbackAfterValidation, setValidationQuery, setValidationQueryTimeout, setValidationQueryTimeout, testCPDS, toString, unwrapMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javax.sql.CommonDataSourcecreateShardingKeyBuilderMethods inherited from interface javax.sql.DataSourcecreateConnectionBuilder
- 
Constructor Details- 
SharedPoolDataSourcepublic SharedPoolDataSource()Default no-argument constructor for Serialization
 
- 
- 
Method Details- 
closeCloses pool being maintained by this data source.- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein class- InstanceKeyDataSource
- Throws:
- SQLException
 
- 
getConnectionManagerprotected org.apache.tomcat.dbcp.dbcp2.datasources.PooledConnectionManager getConnectionManager(org.apache.tomcat.dbcp.dbcp2.datasources.UserPassKey userPassKey) - Specified by:
- getConnectionManagerin class- InstanceKeyDataSource
 
- 
getMaxTotalpublic int getMaxTotal()GetsBaseGenericObjectPool.getMaxTotal()for this pool.- Returns:
- BaseGenericObjectPool.getMaxTotal()for this pool.
 
- 
getNumActivepublic int getNumActive()Gets the number of active connections in the pool.- Returns:
- The number of active connections in the pool.
 
- 
getNumIdlepublic int getNumIdle()Gets the number of idle connections in the pool.- Returns:
- The number of idle connections in the pool.
 
- 
getPooledConnectionAndInfoprotected org.apache.tomcat.dbcp.dbcp2.datasources.PooledConnectionAndInfo getPooledConnectionAndInfo(String userName, String userPassword) throws SQLException Description copied from class:InstanceKeyDataSourceThis method is protected but can only be implemented in this package because PooledConnectionAndInfo is a package private type.- Specified by:
- getPooledConnectionAndInfoin class- InstanceKeyDataSource
- Parameters:
- userName- The user name.
- userPassword- The user password.
- Returns:
- Matching PooledConnectionAndInfo.
- Throws:
- SQLException- Connection or registration failure.
 
- 
getReferenceCreates a newReferenceto aSharedPoolDataSource.- Throws:
- NamingException
 
- 
setMaxTotalpublic void setMaxTotal(int maxTotal) SetsBaseGenericObjectPool.getMaxTotal()for this pool.- Parameters:
- maxTotal-- BaseGenericObjectPool.getMaxTotal()for this pool.
 
- 
setupDefaults- Specified by:
- setupDefaultsin class- InstanceKeyDataSource
- Throws:
- SQLException
 
- 
toStringFields- Overrides:
- toStringFieldsin class- InstanceKeyDataSource
 
 
-