首页 新闻 会员 周边

springMVC声明式事务不回滚(当删除出错时,先前已经执行了的插入操作回滚)

0
悬赏园豆:100 [已关闭问题] 关闭于 2015-08-11 16:55

这是我在spring.xml的配置:

接着我在context-servlet.xml配置了这个:

然后是我在控制器里的代码:

控制器里的插入和删除不用说了,都是从service层调用的,我在service层中的删除方法中抛各了各RuntimeException异 常,当运行程序的时候,程序确实走到了catch里面,尽管数据没有删除,但却新增了一条数据。而我要的是,当删除出错时,先前的插入操作也会回滚。

后来听从同事的建议,把事务管理的范围从service层转到controller,也就是expression="execution(* com.kugou.web.*.*(..))",但还是不行

问题补充:

使用的是mysql,默认的是innodb引擎。没办法,我只好使用注解式的,成功。看来是切面配置的有问题。

 

---没贴全,我在删除操作的后面,加上了throw new Exception();

青沙岸的主页 青沙岸 | 初学一级 | 园豆:83
提问于:2015-08-11 15:20
< >
分享
所有回答(1)
0

定义一个异常类,捕获到了就回滚呗

稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-11 15:51

没贴全,我在删除操作的后面,加上了throw new Exception();的

支持(0) 反对(0) 青沙岸 | 园豆:83 (初学一级) | 2015-08-11 16:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册