Package com.microsoft.sqlserver.jdbc

## Class SQLServerConnectionPoolDataSource

- java.lang.Object
- - com.microsoft.sqlserver.jdbc.SQLServerDataSource
  - - com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource

All Implemented Interfaces:
  `ISQLServerDataSource`, `Serializable`, `Wrapper`, `Referenceable`, `CommonDataSource`, `ConnectionPoolDataSource`, `DataSource`

Direct Known Subclasses:
  `SQLServerXADataSource`

    public class SQLServerConnectionPoolDataSource
    extends SQLServerDataSource
    implements ConnectionPoolDataSource

Provides physical database connections for connection pool managers. SQLServerConnectionPoolDataSource is typically used in Java Application Server environments that support built-in connection pooling and require a ConnectionPoolDataSource to provide physical connections. For example, J2EE application servers that provide JDBC 3.0 API spec connection pooling.

See Also:
  Serialized Form

### Constructor Summary

Constructors
`SQLServerConnectionPoolDataSource()` default constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`PooledConnection` `getPooledConnection()`
`PooledConnection` `getPooledConnection​(String user, String password)`
`Reference` `getReference()`

### Methods inherited from class com.microsoft.sqlserver.jdbc.SQLServerDataSource

`getAADSecurePrincipalId, getAccessToken, getAccessTokenCallback, getAccessTokenCallbackClass, getApplicationIntent, getApplicationName, getAuthentication, getBulkCopyForBatchInsertAllowEncryptedValueModifications, getBulkCopyForBatchInsertBatchSize, getBulkCopyForBatchInsertCheckConstraints, getBulkCopyForBatchInsertFireTriggers, getBulkCopyForBatchInsertKeepIdentity, getBulkCopyForBatchInsertKeepNulls, getBulkCopyForBatchInsertTableLock, getcacheBulkCopyMetadata, getCalcBigDecimalPrecision, getCancelQueryTimeout, getClientCertificate, getClientKey, getColumnEncryptionSetting, getConcatNullYieldsNull, getConnection, getConnection, getConnectRetryCount, getConnectRetryInterval, getDatabaseName, getDatetimeParameterType, getDelayLoadingLobs, getDescription, getDisableStatementPooling, getDomain, getEnablePrepareOnFirstPreparedStatementCall, getEnclaveAttestationProtocol, getEnclaveAttestationUrl, getEncrypt, getFailoverPartner, getFIPS, getGSSCredentials, getHostNameInCertificate, getInstanceName, getIPAddressPreference, getJAASConfigurationName, getJASSConfigurationName, getKeyStoreAuthentication, getKeyStoreLocation, getKeyStorePrincipalId, getKeyVaultProviderClientId, getLastUpdateCount, getLockTimeout, getLoginTimeout, getLogWriter, getMaxResultBuffer, getMSIClientId, getMsiTokenCacheTtl, getMultiSubnetFailover, getPacketSize, getParentLogger, getPortNumber, getPrepareMethod, getQueryTimeout, getQuotedIdentifier, getRealm, getReplication, getResponseBuffering, getRetryConn, getRetryExec, getSelectMethod, getSendStringParametersAsUnicode, getSendTemporalDataTypesAsStringForBulkCopy, getSendTimeAsDatetime, getServerCertificate, getServerName, getServerNameAsACE, getServerPreparedStatementDiscardThreshold, getServerSpn, getSocketFactoryClass, getSocketFactoryConstructorArg, getSocketTimeout, getSSLProtocol, getStatementPoolingCacheSize, getTransparentNetworkIPResolution, getTrustManagerClass, getTrustManagerConstructorArg, getTrustServerCertificate, getTrustStore, getTrustStoreType, getURL, getUseBulkCopyForBatchInsert, getUseDefaultGSSCredential, getUseDefaultJaasConfig, getUseFlexibleCallableStatements, getUseFmtOnly, getUser, getVectorTypeSupport, getWorkstationID, getXopenStates, isWrapperFor, setAADSecurePrincipalId, setAADSecurePrincipalSecret, setAccessToken, setAccessTokenCallback, setAccessTokenCallbackClass, setApplicationIntent, setApplicationName, setAuthentication, setAuthenticationScheme, setBulkCopyForBatchInsertAllowEncryptedValueModifications, setBulkCopyForBatchInsertBatchSize, setBulkCopyForBatchInsertCheckConstraints, setBulkCopyForBatchInsertFireTriggers, setBulkCopyForBatchInsertKeepIdentity, setBulkCopyForBatchInsertKeepNulls, setBulkCopyForBatchInsertTableLock, setcacheBulkCopyMetadata, setCalcBigDecimalPrecision, setCancelQueryTimeout, setClientCertificate, setClientKey, setClientKeyPassword, setColumnEncryptionSetting, setConcatNullYieldsNull, setConnectRetryCount, setConnectRetryInterval, setDatabaseName, setDatetimeParameterType, setDelayLoadingLobs, setDescription, setDisableStatementPooling, setDomain, setEnablePrepareOnFirstPreparedStatementCall, setEnclaveAttestationProtocol, setEnclaveAttestationUrl, setEncrypt, setEncrypt, setFailoverPartner, setFIPS, setGSSCredentials, setHostNameInCertificate, setInstanceName, setIntegratedSecurity, setIPAddressPreference, setJAASConfigurationName, setJASSConfigurationName, setKeyStoreAuthentication, setKeyStoreLocation, setKeyStorePrincipalId, setKeyStoreSecret, setKeyVaultProviderClientId, setKeyVaultProviderClientKey, setLastUpdateCount, setLockTimeout, setLoginTimeout, setLogWriter, setMaxResultBuffer, setMSIClientId, setMsiTokenCacheTtl, setMultiSubnetFailover, setPacketSize, setPassword, setPortNumber, setPrepareMethod, setQueryTimeout, setQuotedIdentifier, setRealm, setReplication, setResponseBuffering, setRetryConn, setRetryExec, setSelectMethod, setSendStringParametersAsUnicode, setSendTemporalDataTypesAsStringForBulkCopy, setSendTimeAsDatetime, setServerCertificate, setServerName, setServerNameAsACE, setServerPreparedStatementDiscardThreshold, setServerSpn, setSocketFactoryClass, setSocketFactoryConstructorArg, setSocketTimeout, setSSLProtocol, setStatementPoolingCacheSize, setTransparentNetworkIPResolution, setTrustManagerClass, setTrustManagerConstructorArg, setTrustServerCertificate, setTrustStore, setTrustStorePassword, setTrustStoreType, setURL, setUseBulkCopyForBatchInsert, setUseDefaultGSSCredential, setUseDefaultJaasConfig, setUseFlexibleCallableStatements, setUseFmtOnly, setUser, setVectorTypeSupport, setWorkstationID, setXopenStates, toString, unwrap`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface javax.sql.CommonDataSource

`createShardingKeyBuilder, getParentLogger`

### Methods inherited from interface javax.sql.ConnectionPoolDataSource

`createPooledConnectionBuilder, getLoginTimeout, getLogWriter, setLoginTimeout, setLogWriter`

### Methods inherited from interface javax.sql.DataSource

`createConnectionBuilder`

### Constructor Detail

#### SQLServerConnectionPoolDataSource

    public SQLServerConnectionPoolDataSource()

default constructor

### Method Detail

#### getPooledConnection

    public PooledConnection getPooledConnection()
                                         throws SQLException

Specified by:
  `getPooledConnection` in interface `ConnectionPoolDataSource`
Throws:
  `SQLException`

#### getPooledConnection

    public PooledConnection getPooledConnection​(String user,
                                                String password)
                                         throws SQLException

Specified by:
  `getPooledConnection` in interface `ConnectionPoolDataSource`
Throws:
  `SQLException`

#### getReference

    public Reference getReference()

Specified by:
  `getReference` in interface `Referenceable`
Overrides:
  `getReference` in class `SQLServerDataSource`