Class ManagedTransaction
- java.lang.Object
-
- org.apache.ibatis.transaction.managed.ManagedTransaction
-
- All Implemented Interfaces:
Transaction
public class ManagedTransaction extends java.lang.Object implements Transaction
Transactionthat lets the container manage the full lifecycle of the transaction. Delays connection retrieval until getConnection() is called. Ignores all commit or rollback requests. By default, it closes the connection but can be configured not to do it.- See Also:
ManagedTransactionFactory
-
-
Field Summary
Fields Modifier and Type Field Description private booleancloseConnectionprivate java.sql.Connectionconnectionprivate javax.sql.DataSourcedataSourceprivate TransactionIsolationLevellevelprivate static Loglog
-
Constructor Summary
Constructors Constructor Description ManagedTransaction(java.sql.Connection connection, boolean closeConnection)ManagedTransaction(javax.sql.DataSource ds, TransactionIsolationLevel level, boolean closeConnection)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Close inner database connection.voidcommit()Commit inner database connection.java.sql.ConnectiongetConnection()Retrieve inner database connection.java.lang.IntegergetTimeout()Get transaction timeout if set.protected voidopenConnection()voidrollback()Rollback inner database connection.
-
-
-
Field Detail
-
log
private static final Log log
-
dataSource
private javax.sql.DataSource dataSource
-
level
private TransactionIsolationLevel level
-
connection
private java.sql.Connection connection
-
closeConnection
private final boolean closeConnection
-
-
Constructor Detail
-
ManagedTransaction
public ManagedTransaction(java.sql.Connection connection, boolean closeConnection)
-
ManagedTransaction
public ManagedTransaction(javax.sql.DataSource ds, TransactionIsolationLevel level, boolean closeConnection)
-
-
Method Detail
-
getConnection
public java.sql.Connection getConnection() throws java.sql.SQLExceptionDescription copied from interface:TransactionRetrieve inner database connection.- Specified by:
getConnectionin interfaceTransaction- Returns:
- DataBase connection
- Throws:
java.sql.SQLException- the SQL exception
-
commit
public void commit() throws java.sql.SQLExceptionDescription copied from interface:TransactionCommit inner database connection.- Specified by:
commitin interfaceTransaction- Throws:
java.sql.SQLException- the SQL exception
-
rollback
public void rollback() throws java.sql.SQLExceptionDescription copied from interface:TransactionRollback inner database connection.- Specified by:
rollbackin interfaceTransaction- Throws:
java.sql.SQLException- the SQL exception
-
close
public void close() throws java.sql.SQLExceptionDescription copied from interface:TransactionClose inner database connection.- Specified by:
closein interfaceTransaction- Throws:
java.sql.SQLException- the SQL exception
-
openConnection
protected void openConnection() throws java.sql.SQLException- Throws:
java.sql.SQLException
-
getTimeout
public java.lang.Integer getTimeout() throws java.sql.SQLExceptionDescription copied from interface:TransactionGet transaction timeout if set.- Specified by:
getTimeoutin interfaceTransaction- Returns:
- the timeout
- Throws:
java.sql.SQLException- the SQL exception
-
-