Package org.apache.commons.dbcp.managed
This package provides support for pooling of ManagedConnections. A managed connection is responsible for managing a database connection in a transactional environment (typically called Container Managed). A managed connection opperates like any other connection when no gloabal transaction (a.k.a. XA transaction or JTA Transaction) is in progress. When a global transaction is active a single physical connection to the database is used by all ManagedConnections accessed in the scope of the transaction. Connection sharing means that all data access during a transaction has a consistent view of the database. When the global transaction is committed or rolled back the enlisted connections are committed or rolled back.
This package supports full XADataSources and non-XA data sources using local transaction semantics. non-XA data sources commit and rollback as part of the transaction but are not recoverable in the case of an error because they do not implement the two-phase commit protocol.
-
Interface Summary Interface Description TransactionContextListener A listener for transaction completion events.XAConnectionFactory XAConnectionFactory is an extension of ConnectionFactory used to create connections in a transaction managed environment. -
Class Summary Class Description BasicManagedDataSource BasicManagedDataSource is an extension of BasicDataSource which creates ManagedConnections.DataSourceXAConnectionFactory An implementation of XAConnectionFactory which uses a real XADataSource to obtain connections and XAResources.LocalXAConnectionFactory An implementation of XAConnectionFactory which manages non-XA connections in XA transactions.LocalXAConnectionFactory.LocalXAResource LocalXAResource is a fake XAResource for non-XA connections.ManagedConnection ManagedConnection is responsible for managing a database connection in a transactional environment (typically called "Container Managed").ManagedDataSource The ManagedDataSource is a PoolingDataSource that creates ManagedConnections.PoolableManagedConnection PoolableConnection that unregisters from TransactionRegistry on Connection real destroy.PoolableManagedConnectionFactory APoolableConnectionFactory
that createsPoolableManagedConnection
s.TransactionContext TransactionContext represents the association between a single XAConnectionFactory and a Transaction.TransactionRegistry TransactionRegistry tracks Connections and XAResources in a transacted environment for a single XAConnectionFactory.