java并发修改数据,使用乐观锁

java并发修改同一记录时,避免更新丢失,需要加锁。要么在应用层加锁,要么在缓存加锁,要么

在数据库层使用乐观锁,使用 version 作为更新依据。

资金相关的金融敏感信息,使用悲观锁策略,正例:悲观锁遵循一锁二判三更新四释放的原则

在实体类中加上如下注解,由前端统一传更新之前的版本号

java 复制代码
@ApiModelProperty(value = "版本号")
@TableField(value = "VERSION", fill = FieldFill.INSERT, update = "%s+1")
@Version
private Integer version;

在sql执行修改时,sql如下

sql 复制代码
update tablename set version = version+1 where version = oldVersion
相关推荐
前端 贾公子几秒前
@uni-helper 社区:让 uni-app 拥抱 ESM 时代
开发语言·前端·javascript
弈风千秋万古愁3 分钟前
常见配置文件-AI辅助
开发语言·python
不知名。。。。。。。。4 分钟前
仿muduo库实现高并发服务器-----Channel模块 和 Poller模块
开发语言·前端·javascript
Singe.Chen6 分钟前
C# 配置文件加密解密:最简便的实现方案
开发语言·网络协议·c#·信息与通信
花间相见6 分钟前
【JAVA基础01】——类和对象
java·开发语言·python
●VON7 分钟前
【鸿蒙PC】在 HarmonyOS 上跑 Electron?手把手教你搞定桌面欢迎页!(Mac版)
开发语言·macos·华为·electron·电脑·harmonyos
在等晚安么7 分钟前
每日八股文
java·八股
lclcooky7 分钟前
Spring中的IOC详解
java·后端·spring
0 0 08 分钟前
CCF-CSP 37-2 机器人饲养指南(apple)【C++】考点:完全背包问题
开发语言·c++·算法
GIOTTO情9 分钟前
2026小红书投流新规下,基于Infoseek API的媒介投放自动化方案
java·linux·开发语言