Class JdbcTransaction
java.lang.Object
org.apache.ibatis.transaction.jdbc.JdbcTransaction
- All Implemented Interfaces:
Transaction
Transaction that makes use of the JDBC commit and rollback facilities directly. It relies on the connection
retrieved from the dataSource to manage the scope of the transaction. Delays connection retrieval until
getConnection() is called. Ignores commit or rollback requests when autocommit is on.- Author:
- Clinton Begin
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanprotected Connectionprotected DataSourceprotected TransactionIsolationLevelprotected boolean -
Constructor Summary
ConstructorsConstructorDescriptionJdbcTransaction(Connection connection) JdbcTransaction(DataSource ds, TransactionIsolationLevel desiredLevel, boolean desiredAutoCommit) JdbcTransaction(DataSource ds, TransactionIsolationLevel desiredLevel, boolean desiredAutoCommit, boolean skipSetAutoCommitOnClose) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close inner database connection.voidcommit()Commit inner database connection.Retrieve inner database connection.Get transaction timeout if set.protected voidprotected voidvoidrollback()Rollback inner database connection.protected voidsetDesiredAutoCommit(boolean desiredAutoCommit)
-
Field Details
-
connection
-
dataSource
-
level
-
autoCommit
protected boolean autoCommit -
skipSetAutoCommitOnClose
protected boolean skipSetAutoCommitOnClose
-
-
Constructor Details
-
JdbcTransaction
public JdbcTransaction(DataSource ds, TransactionIsolationLevel desiredLevel, boolean desiredAutoCommit) -
JdbcTransaction
public JdbcTransaction(DataSource ds, TransactionIsolationLevel desiredLevel, boolean desiredAutoCommit, boolean skipSetAutoCommitOnClose) -
JdbcTransaction
-
-
Method Details
-
getConnection
Description copied from interface:TransactionRetrieve inner database connection.- Specified by:
getConnectionin interfaceTransaction- Returns:
- DataBase connection
- Throws:
SQLException- the SQL exception
-
commit
Description copied from interface:TransactionCommit inner database connection.- Specified by:
commitin interfaceTransaction- Throws:
SQLException- the SQL exception
-
rollback
Description copied from interface:TransactionRollback inner database connection.- Specified by:
rollbackin interfaceTransaction- Throws:
SQLException- the SQL exception
-
close
Description copied from interface:TransactionClose inner database connection.- Specified by:
closein interfaceTransaction- Throws:
SQLException- the SQL exception
-
setDesiredAutoCommit
protected void setDesiredAutoCommit(boolean desiredAutoCommit) -
resetAutoCommit
protected void resetAutoCommit() -
openConnection
- Throws:
SQLException
-
getTimeout
Description copied from interface:TransactionGet transaction timeout if set.- Specified by:
getTimeoutin interfaceTransaction- Returns:
- the timeout
- Throws:
SQLException- the SQL exception
-