0
私は多くのデータを処理していますので、私はループを行います。複数のクエリとトランザクション
@Transactional
@Override
public void processPayment(List<Long> paymentsId, PaymentModeEnum paymentMode) throws ProcessPaymentException{
...
processCreditCardPayment(payments);
}
private void processCreditCardPayment(List<Payment> payments) throws ProcessPaymentException {
for (Payment payment : payments) {
try {
//save to db
}catch (ProcessPaymentException ppe) {
}
}
}
10項目のIループは、最後の1に、エラーが発生した場合ProcessPaymentExceptionは例外
を拡張します。 すべてがロールバックされています(すべてのアイテム)、またはエラーが発生したもののみですか?
簡単に動作をテストできます。その答えは、 'save to db'の実装に依存していると言われています – iamiddy
バネデータリポジトリからの保存方法のみです。 –