DB 接続の管理に TransactionTemplate を使用します。
txTemplate.execute(new TransactionCallback<Void>() {
@Override
public Void doInTransaction(TransactionStatus txStatus) {
try {
***********************
List<Map<String, Object>> rows = dbConn.queryForList(sql, bindValues);
*********************************
System.out.println(txStatus.toString());
System.out.println(txStatus.isNewTransaction());
System.out.println(txStatus.isRollbackOnly());
}
}catch (RuntimeException e) {
txStatus.setRollbackOnly();
System.out.println("*************"+e.getMessage());
throw e;
}
これは私のコードの結果です:
create connection
org.springframework.transaction.support.DefaultTransactionStatus@37b60886
true
false
org.springframework.transaction.support.DefaultTransactionStatus@37b60886
true
false
org.springframework.transaction.support.DefaultTransactionStatus@37b60886
true
false
3 回のメソッド呼び出し: なぜでしょうか?