java如何处理CannotCreateTransactionException
我有一个方法,有时使用CannotCreateTransactionException
会失败。我该怎么办?此方法将记录存储到数据库中。如何重试
@Transactional(value = "transactionManagerDC")
public void recordErrors(Execution execution) {
utilService.recordExecution(execution);
}
- 如果我用springretry注释该方法,springretry是否可以处理新事务李>
@Retryable(value = { CannotCreateTransactionException.class }, maxAttempts = 3, backoff = @Backoff(delay = 5000))
@Transactional(value = "transactionManagerDC")
public void recordErrors(Execution execution) {
utilService.recordExecution(execution);
}
- 我想捕获此事务并将日志写入数据库。但这怎么可能呢?因为没有未用尽的数据库而发生异常?不过,我可以在catch块中添加DB write吗李>
@Transactional(value = "transactionManagerDC")
public void recordErrors(Execution execution) {
try{
utilService.recordExecution(execution);
}catch (TransactionException e){
utilService.recordFailedExecution(execution, e);
}
}
共 (0) 个答案