EMS和DB操作在同一个事务 最近,在项目中遇到这样一个问题,就是在一个方法里有做DB 保存操作和发送EMS,因为commit动作是在方法全部跑完后执行的(Spring的原因吧?),所以要是db 保存成功,接着发送EMS,也成功,最后在做commit时,DB down了,这时,信息发送出去了,但DB没更新,这就有问题了,如果我想保持这两个动作:DB,EMS在同一个“事务”中(这里叫事务就是想保持两个动作的一致),有没什么办法呢?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1:抛出异常2:向上建构3:条理清晰---------------在DAO逻辑上exe--不进行事务封装。service Class:@Transactional{DB--SAVEEMS} 拆写成两个方法。先去处理数据库操作执行成功后再做EMS处理。你的数据库操作和ems又不是同步的,再者事务只针对数据库操作。只能成功一个再处理另一个。 谢谢各位的回复,只是:2楼,我知道事务是针对数据库操作的,所以在事务上加引号,如果一个个去实现就没意义了,有没什么现成的方案解决这样的让DB操作和EMS发送保持统一操作的呢?谢谢! Xfire调用问题!! hibernate忽略了某个字段的问题 hibernate批量查询优化 webservice异常 spring中数据源问题 经典java题!!!!!! [谢谢您] DWR框架问题:单击“修改”,都显示“张十”、…… 那位大侠给小弟讲讲RMI中的动态类加载,一定加分,谢谢,急,不够在加,最好有个例子 web 项目运行报错,不知怎么回事 对于hibernate注解一对一查询 怎么让查询条件是自己指定的字段啊? requeset.getAttribute()可以获取url参数吗? 无法新建flex j2ee技术
2:向上建构
3:条理清晰
---------------
在DAO逻辑上exe--不进行事务封装。service Class:
@Transactional
{
DB--SAVE
EMS
}
先去处理数据库操作
执行成功后再做EMS处理。你的数据库操作和ems又不是同步的,再者事务只针对数据库操作。
只能成功一个再处理另一个。