现象描述如下
1,担当和管理员同时打开同一个投稿做进行编辑。
2,担当点击删除,更新delete_flg字段为删除状态,然后投稿就不在画面上显示了。
3,管理员的编辑还在,然后点击保存之后,正常保存了。
4,担当来再更新页面,那个投稿又回来了。管理员的操作将担当的操作覆盖掉了

网上查了一同,发现一种解决觉办法,现记录一下:


◎ 乐观锁
1、表中增加:最后修改时间、最后修改人;
2、打开时就读取最后修改时间和修改人信息;
3、保存是检查最后修改时间和修改人信息是否匹配,如果不匹配就警告:在你修改途中,已经有别人做过修改了,如果保存就会覆盖别人的劳动成果。

◎ 悲观锁
1、表中增加:正在修改时间、正在修改人;
2、打开时检查是否有“正在修改时间”和“正在修改人”,如果有则警告是否强制继续修改;
3、更新正在修改时间和修改人信息;
4、保存时清除“正在修改时间”和“正在修改人”。

主要参考链接:https://bbs.csdn.net/topics/390202359

参考链接:https://blog.csdn.net/youyou_yo/article/details/49513455

 

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐