Package nablarch.common.dao
Class UniversalDao.Transaction
java.lang.Object
nablarch.core.db.transaction.SimpleDbTransactionExecutor<Void>
nablarch.common.dao.UniversalDao.Transaction
- Enclosing class:
- UniversalDao
トランザクション境界を作るためのクラス。
通常の業務トランザクションと異なるトランザクションでデータベースアクセスを行いたい場合、
本クラスを継承することで別トランザクション内で
UniversalDao
を使用することができる。
// projectエンティティを登録する場合
final Project project = SessionUtil.get(context, "project");
new UniversalDao.Transaction("トランザクションマネージャ名"){
// execute()を実装する
protected void execute() {
// UniversalDaoを利用したDB操作処理を記述する
UniversalDao.insert(project);
}
};
- Author:
- kawasima, Hisaaki Shioiri
-
Constructor Summary
ConstructorDescriptionTransaction
(String transactionManagerName) トランザクションマネージャ名を指定して、別トランザクションを生成する。Transaction
(SimpleDbTransactionManager transactionManager) トランザクションマネージャを指定して、別トランザクションを生成する。 -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
execute()
データベースへのアクセス処理を行う。execute
(AppDbConnection connection) SQL文を実行する。Methods inherited from class nablarch.core.db.transaction.SimpleDbTransactionExecutor
doTransaction
-
Constructor Details
-
Transaction
トランザクションマネージャを指定して、別トランザクションを生成する。- Parameters:
transactionManager
- トランザクションマネージャ
-
Transaction
トランザクションマネージャ名を指定して、別トランザクションを生成する。- Parameters:
transactionManagerName
- トランザクションマネージャ名
-
-
Method Details
-
execute
Description copied from class:SimpleDbTransactionExecutor
SQL文を実行する。- Specified by:
execute
in classSimpleDbTransactionExecutor<Void>
- Parameters:
connection
- コネクション- Returns:
- トランザクション実行結果
-
execute
protected abstract void execute()データベースへのアクセス処理を行う。 コネクションはDaoContextFactoryに設定されたものが使われるので、 このexecuteを実装し、中でUniversalDaoのメソッドを使えば 別トランザクションになる。 また、自動的にコミット/ロールバックが行われる。
-