No need to include RuntimeException
in rollbackFor
list. It will handle that even if you do not mention it.
I've tried it out for jdbcTemplate:-
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = MyException.class)
public void updateSalary(final int increment){
jdbcTemplate.update("update EMPLOYEE set emp_salary = emp_salary + ?", increment);
throw new RuntimeException("update exception");
}
Output:
After Insertion:
1 Deepak 35000
2 Yogesh 35000
3 Aditya 35000
update exception
After Update
1 Deepak 35000
2 Yogesh 35000
3 Aditya 35000
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…