blog

[Java] 手動トランザクション管理

コードの途中でトランザクションを手動で管理し、ロールバックポイントを設定し、ロジックに従ってロールバック操作を手動で選択する もう1つ簡単な方法があります。...

Dec 8, 2020 · 1 min. read

コードの途中でトランザクションを手動で管理



ロールバックポイントの設定

//手動トランザクション
DefaultTransactionDefinition def = new DefaultTransactionDefinition();
def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
TransactionStatus status = transactionManager.getTransaction(def);

ロジックに基づくロールバック操作の手動選択

 synchroniseResponseDto.setMessage("同期に成功した");
 synchroniseResponseDtoList.add(synchroniseResponseDto);
 transactionManager.commit(status);
}catch(Exception e) {
 synchroniseResponseDto.setMessage(message);
 synchroniseResponseDto.setSuccess(false);
 synchroniseResponseDtoList.add(synchroniseResponseDto);
 transactionManager.rollback(status);
}

もっと簡単な方法があります:

TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

これは現在のトランザクションにロールバックフラグを設定することになり、単純ですが、上記のアプローチほど柔軟ではありません



Read next

UIWindowを取得する

注: 以下のものをそのまま使うのがよいでしょう。特にiOS11以降は。 3、UIWindowのプロパティを導入します。

Dec 8, 2020 · 2 min read