🎉在工作场景中遇到这样一个需求,对表中的数据进行更新,更新的步骤是:首先,删除表中所有的数据记录;之后,再将更新过后的数据插入到表中。由于系统业务逻辑相关的原因,在数据插入时可能会出现异常,因此当出现异常而终止插入过程,需要能够将事务进行回滚,恢复之前删除的数据。
✨这里肯定是需要使用事务进行控制了,那么在使用 Spring 框架提供的声明式事务注解方式@Transactional ,并确认避免了事务失效的几种情况之后,在测试接口时事务还是没有生效。
✨以下是主要的相关方法实现:
@Transactional(rollbackFor = Exception.class)
public void runDeptTask() {
//to do something

本文探讨了在使用Spring框架的@Transactional注解时遇到的问题,即在使用truncate语句清空表后,即使出现异常也无法回滚事务。通过更换为delete语句解决了问题。
最低0.47元/天 解锁文章
887

被折叠的 条评论
为什么被折叠?



