Appearance
当要更新一条记录的时候,希望这条记录没有被别人更新,此时我们就可以使用乐观锁来进行判断。
乐观锁实现方式
- 取出记录时,获取当前version
- 更新时,带上这个version
- 执行更新时, set version = newVersion where version = oldVersion
- 如果version不对,就更新失败
1.配置
java
//乐观锁配置
@Bean
public OptimisticLockerInterceptor optimisticLockerInterceptor() {
return new OptimisticLockerInterceptor();
}
2.注解实体字段
需要为实体字段添加@Version
注解。
为表添加version字段,并且设置初始值为1;
为User实体对象添加version字段,并且添加@Version注解;
java@Version private Integer version;