您的位置:首页 > 编程语言 > Java开发

spring 管理的事务。个人理解(SSH项目注解配置)

2016-09-08 20:31 309 查看
在研究了hibernate的二级缓存,查询缓存之后

      发现了另外一个项目的大问题

项目里面的事务 竟然在失败的时候 不可以回滚

更可怕的时候那么长时间过去了 竟然到现在才意识到

现在项目里面都是用的spring的 注解事务 自从框架搭建后就再没有动过

我承认 我也很无知 不知道 spring的 事务 默认情况下 必须是在 抛出runtimeException之后才能回滚事务

对于 在service 里面 处理异常情况 更是不会回滚事务

想想 都出了冷汗 

赶紧恶补了一下 

  对于之前的问题也找出了处理办法
1.去掉 在service里面的try catch
2.给需要事务处理的方法前加上@Transactional(rollbackFor=Exception.class)

3.尽量在开始任务前把参数判断异常先处理并返回
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐