同行们,本人菜鸟,有个问题想问下,希望不吝赐教!
比如数据有条记录,如果我需要修改这条记录的余额balance字段,为了防止并发操作的影响,是不是得先加锁,
java代码执行sql顺序是不是这样的:
select balance from table where id=1 for update;
double money = getBalance(sql);
//一些业务代码
update table set balance=money-100 where id=1;
这是jdbc代码这样写的,
如果用spring的话,也是类似吗?这个和隔离级别有关系吗,需要手工加上for update吗,没看懂spring是如何控制这种操作的