一、Spring事务的传播属性
Propagation(传播属性)
REQUIRED–支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。ServicerA{
//调用methodA的时候如果没有事务将开启事务,这时候再调用methodB的时候发现已经有事务,此时methodB会加入到methodA的事务中,无论methodA和methodB中任何一个地方出现异常都会回滚事务,例...
分类:
编程语言 时间:
2015-04-19 11:37:36
阅读次数:
211
一、Propagation (事务的传播属性) Propagation : key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。有以下选项可供使用:PROPAGATION_REQUIRED--支持当前事务,如果当前没有事...
分类:
编程语言 时间:
2015-04-16 09:14:03
阅读次数:
156
脏读(Dirty Read) 脏读意味着一个事务读取了另一个事务未提交的数据,而这个数据是有可能回滚不可重复读(Unrepeatable Read) 不可重复读意味着,在数据库访问中,一个事务范围内两个相同的查询却返回了不同数据。这是由于查询时系统中其他事务修改的提交而引起的。 例如:事务B中对某个...
分类:
其他好文 时间:
2015-04-14 23:16:28
阅读次数:
296
转载自:http://www.blogjava.net/freeman1984/archive/2010/04/28/319595.html7个传播行为,4个隔离级别,Spring事务的传播行为和隔离级别[transactionbehaviorandisolatedlevel]2007-08-01 ...
分类:
编程语言 时间:
2015-04-14 15:57:36
阅读次数:
156
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读...
分类:
数据库 时间:
2015-04-11 17:51:34
阅读次数:
152
今天公司的系统发现一个bug:主表记录的已还款总额和还款记录表里面的偿还金额之和不一致。看到这个问题,我的第一反应是怀疑还款的时候离线锁没生效,导致并发修改主表记录。可是经过查看日志和代码,排除了这个可能性。然后又怀疑可能是由于还款之后,修改已还款总额和还款状态时只调用了jpa的save,没有flu...
分类:
其他好文 时间:
2015-04-07 21:29:01
阅读次数:
151
最近在做一个项目中使用到了MariaDB(Innodb存储引擎),系统并发性比较高需要不停的接收前端传过来的数据(每天大概400W),传过来之后系统会自动的尽快处理计算结果(分批处理,需要更新业务表)。在开发过程中经常出现死锁和锁等待的问题。翻阅了一些资料和动手验证,整理如下:..
分类:
数据库 时间:
2015-04-07 20:17:14
阅读次数:
193
一、Propagation (事务的传播属性)Propagation : key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。有以下选项可供使用:PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 PROPAG....
分类:
编程语言 时间:
2015-04-07 15:14:32
阅读次数:
159
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不...
分类:
数据库 时间:
2015-04-07 14:00:39
阅读次数:
174
演示不同隔离级别下的并发问题1.当把事务的隔离级别设置为read uncommitted时,会引发脏读、不可重复读和虚读A窗口set transaction isolation level read uncommitted;start transaction;select * from accou....
分类:
其他好文 时间:
2015-04-05 11:52:51
阅读次数:
128