spring配置了事务,抛出异常不回滚

数据库是sqlserver2008配置文件是这样的在client包下有个类的方法叫createXML,中间需要保存四张表,第一张保存成功,第二章catch出异常了,但第一... 数据库是sql server2008
配置文件是这样的

在client包下有个类的方法叫createXML,中间需要保存四张表,第一张保存成功,第二章catch出异常了,但第一张表还是保存成功了,这是为什么?
展开
 我来答
班点点250
2013-10-25 · 超过23用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:43.8万
展开全部
如果你在createXML方法最后catch了异常,并且没有往外抛,那么数据不会滚的。
你可以这样尝试一下把rollback-for属性去掉,并且咋createXML中不做任何异常捕捉,
这样肯定可以回滚。因为
spring默认可以回滚 在抛出运行时和unchecked exceptions时才标识事务回滚,
也就是说,当抛出一个 RuntimeException 或其子类例的实例时。(Errors 也一样 - 默认地 - 标识事务回滚。)从事务方法中抛出的Checked exceptions将 不 被标识进行事务回滚
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式