public abstract class JdbcTransactionObjectSupport
extends java.lang.Object
implements org.springframework.transaction.SavepointManager, org.springframework.transaction.support.SmartTransactionObject
ConnectionHolder
with a JDBC Connection
, and implements the
SavepointManager
interface based on that ConnectionHolder
.
Allows for programmatic management of JDBC Savepoints
.
Spring's DefaultTransactionStatus
automatically delegates to this, as it autodetects transaction objects which
implement the SavepointManager
interface.
DataSourceTransactionManager
Constructor and Description |
---|
JdbcTransactionObjectSupport() |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
createSavepoint()
This implementation creates a JDBC 3.0 Savepoint and returns it.
|
void |
flush() |
ConnectionHolder |
getConnectionHolder() |
protected ConnectionHolder |
getConnectionHolderForSavepoint() |
java.lang.Integer |
getPreviousIsolationLevel() |
boolean |
hasConnectionHolder() |
boolean |
isSavepointAllowed() |
void |
releaseSavepoint(java.lang.Object savepoint)
This implementation releases the given JDBC 3.0 Savepoint.
|
void |
rollbackToSavepoint(java.lang.Object savepoint)
This implementation rolls back to the given JDBC 3.0 Savepoint.
|
void |
setConnectionHolder(ConnectionHolder connectionHolder) |
void |
setPreviousIsolationLevel(java.lang.Integer previousIsolationLevel) |
void |
setSavepointAllowed(boolean savepointAllowed) |
public void setConnectionHolder(ConnectionHolder connectionHolder)
public ConnectionHolder getConnectionHolder()
public boolean hasConnectionHolder()
public void setPreviousIsolationLevel(java.lang.Integer previousIsolationLevel)
public java.lang.Integer getPreviousIsolationLevel()
public void setSavepointAllowed(boolean savepointAllowed)
public boolean isSavepointAllowed()
public void flush()
flush
in interface java.io.Flushable
flush
in interface org.springframework.transaction.support.SmartTransactionObject
public java.lang.Object createSavepoint() throws org.springframework.transaction.TransactionException
createSavepoint
in interface org.springframework.transaction.SavepointManager
org.springframework.transaction.TransactionException
Connection.setSavepoint()
public void rollbackToSavepoint(java.lang.Object savepoint) throws org.springframework.transaction.TransactionException
rollbackToSavepoint
in interface org.springframework.transaction.SavepointManager
org.springframework.transaction.TransactionException
Connection.rollback(java.sql.Savepoint)
public void releaseSavepoint(java.lang.Object savepoint) throws org.springframework.transaction.TransactionException
releaseSavepoint
in interface org.springframework.transaction.SavepointManager
org.springframework.transaction.TransactionException
Connection.releaseSavepoint(java.sql.Savepoint)
protected ConnectionHolder getConnectionHolderForSavepoint() throws org.springframework.transaction.TransactionException
org.springframework.transaction.TransactionException