public abstract class JdbcTransactionObjectSupport extends ObjectSE implements SavepointManager, SmartTransactionObject
Connection
を持つ ConnectionHolder
を含むことができ、その ConnectionHolder
に基づいて SavepointManager
インターフェースを実装します。JDBC Savepoints
SE のプログラムによる管理を可能にします。Spring の DefaultTransactionStatus
は、SavepointManager
インターフェースを実装するトランザクションオブジェクトを自動検出するため、これに自動的に委譲します。
DataSourceTransactionManager
コンストラクターと説明 |
---|
JdbcTransactionObjectSupport() |
修飾子と型 | メソッドと説明 |
---|---|
ObjectSE | createSavepoint() この実装は、JDBC 3.0 セーブポイントを作成して返します。 |
void | flush() 該当する場合、基礎となるセッションをデータストアにフラッシュします。たとえば、影響を受けるすべての Hibernate/JPA セッション。 |
ConnectionHolder | getConnectionHolder() このトランザクションオブジェクトの ConnectionHolder を返します。 |
protected ConnectionHolder | getConnectionHolderForSavepoint() |
IntegerSE | getPreviousIsolationLevel() 保持されている以前の分離レベルがあれば、それを返します。 |
boolean | hasConnectionHolder() このトランザクションオブジェクトに ConnectionHolder があるかどうかを確認します。 |
boolean | isReadOnly() このトランザクションの読み取り専用ステータスを返します。 |
boolean | isSavepointAllowed() このトランザクション内でセーブポイントが許可されているかどうかを返します。 |
void | releaseSavepoint(ObjectSE savepoint) この実装は、指定された JDBC 3.0 セーブポイントをリリースします。 |
void | rollbackToSavepoint(ObjectSE savepoint) この実装は、指定された JDBC 3.0 セーブポイントにロールバックします。 |
void | setConnectionHolder(ConnectionHolder connectionHolder) このトランザクションオブジェクトの ConnectionHolder を設定します。 |
void | setPreviousIsolationLevel(IntegerSE previousIsolationLevel) 以前の分離レベルがある場合は保持するように設定します。 |
void | setReadOnly(boolean readOnly) このトランザクションの読み取り専用ステータスを設定します。 |
void | setSavepointAllowed(boolean savepointAllowed) このトランザクション内でセーブポイントを許可するかどうかを設定します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
isRollbackOnly
public void setConnectionHolder(@Nullable ConnectionHolder connectionHolder)
public ConnectionHolder getConnectionHolder()
public boolean hasConnectionHolder()
public void setPreviousIsolationLevel(@Nullable IntegerSE previousIsolationLevel)
@Nullable public IntegerSE getPreviousIsolationLevel()
public void setReadOnly(boolean readOnly)
false
です。public boolean isReadOnly()
public void setSavepointAllowed(boolean savepointAllowed)
false
です。public boolean isSavepointAllowed()
public void flush()
SmartTransactionObject
FlushableSE
の flushSE
SmartTransactionObject
の flush
public ObjectSE createSavepoint() throws TransactionException
SavepointManager
の createSavepoint
SavepointManager.rollbackToSavepoint(java.lang.Object)
または SavepointManager.releaseSavepoint(java.lang.Object)
に渡されるセーブポイントオブジェクト NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合 TransactionException
- たとえば、トランザクションが適切な状態にないためにセーブポイントを作成できなかった場合 Connection.setSavepoint()
SEpublic void rollbackToSavepoint(ObjectSE savepoint) throws TransactionException
SavepointManager
の rollbackToSavepoint
savepoint
- ロールバックするセーブポイント NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合 TransactionException
- ロールバックが失敗した場合 Connection.rollback(java.sql.Savepoint)
SEpublic void releaseSavepoint(ObjectSE savepoint) throws TransactionException
SavepointManager
の releaseSavepoint
savepoint
- リリースするセーブポイント NestedTransactionNotSupportedException
- 基になるトランザクションがセーブポイントをサポートしていない場合 TransactionException
- リリースが失敗した場合 Connection.releaseSavepoint(java.sql.Savepoint)
SEprotected ConnectionHolder getConnectionHolderForSavepoint() throws TransactionException