关于这两个,我也研究了一下,用比较通俗的方法跟大家说一下,他们的原理吧。
乐观锁的原理:为了让客户在最后的版定的数据的基础上更新的机制
一般解决它的情况有两种:
1.版本机制version
一般在数据库表里面增加一个version字段,每更新数据一次,对版本+1,提交更新的时候,判断数据库表对应记录的当前版本信息与第一次取出来的version值进行比对,如果相等就更新
2.最后时间
数据库表里面会存在一个最后操作时间,做更新操作的时候,比较一下该对象的最后操作时间和数据库表的最后一次操作时间是否一致,如果一致,就将当前时间改变,提交数据库
悲观锁的原理:它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此假设A操作的时候,B必须等A操作完之后,才能操作
浙公网安备 33010602011771号