事务
_正在学技术的胖子
这个作者很懒,什么都没留下…
展开
-
由于事务隔离,查询不到最新的数据
场景:方法A调用方法B,并给方法B传递订单信息(方法A与方法B所在的类不一样)遇到问题:方法B中拿到的订单信息由于某种原因不是最新的,此时在方法B中利用订单号重新查询订单信息,查询到的信息为旧的信息,因为方法A与方法B在同一个事物中。解决思路:新开一个事务查询最新的订单信息。思路实现:建一个类C,类C中有一个方法,暂且叫方法C,方法C中新开事务查询新的订单信原创 2016-04-20 18:18:19 · 1165 阅读 · 0 评论 -
Spring事务超时、回滚的相关说明
事务超时:@Transactional(timeout = 60)如果用这个注解描述一个方法的话,线程已经跑到方法里面,如果已经过去60秒了还没跑完这个方法并且线程在这个方法中的后面还有涉及到对数据库的增删改查操作时会报事务超时错误(会回滚)。如果已经过去60秒了还没跑完但是后面已经没有涉及到对数据库的增删改查操作,那么这时不会报事务超时错误(不会回滚)。回滚:Spri原创 2016-07-06 17:47:48 · 12959 阅读 · 0 评论 -
关于Spring事务嵌套的一点认识
执行update语句时会锁住一行。如果这个update语句还没提交,然后另外一个update语句又来更新这一行被锁住的数据,那么第二个update就会等待,直到第一个update语句提交了,如果第一个update语句一直不提交,那么第二个update语句就会报行被锁住了,锁等待超时(Lock wait timeout exceeded; try restarting transaction)原创 2016-07-07 14:49:09 · 1468 阅读 · 0 评论 -
spring+springMVC中使用@Transcational方式管理事务的配置方法
springMVC 中,事务通常都在service层控制,当然controller层也可以用事务,只要配置配对,但通常不建议直接在controller层配事务,controller的作用是管理参数以及做一些简单的逻辑,业务都放在service层会比较规范。 所以这里只讨论service层的事务配置问题。以下是转载自这里的文章:http://www.cnblogs.com/flying607/p转载 2017-07-01 11:25:20 · 6887 阅读 · 0 评论