前言:在做项目时,遇到了文件访问修改并发的问题,经前辈指点所得到的一点经验,在这里分享一下

情况:

在OA系统中对文件进行操作,文件的名称和路径作为数据存储在数据库中。同一份文件可能被多个操作员进行对新数据增加或者对旧数据修改,而在多个操作员对同一份文件进行操作的同时,出现了如下问题

  1. 操作员A对文件进行了修改,因为修改数据量大,所以未能及时提交。
  2. 这时操作员B对同一份文件进行了修改,但由于修改的数据量小,所以很快就修改提交了。
  3. 之后,操作员A将文件给提交了。

问题出现:

这时修改后的文件,显示的内容只有操作员A所提交的数据,也就是操作员B操作的数据被操作员A给覆盖了

那么该怎么解决这个问题呢?

因为是在不同的时间对相同文件进行操作,所以思考点还是放在时间轴上。
这里我对数据库中存储文件的表增加一个lastTime字段(最后修改时间)。

具体流程如下:

当然,这只是一种方法,大家有更好的方法和思路可以在下面评论

那就总结到这,积累点点滴滴,一步一脚印,加油

posted on 2019-04-16 20:46  寒翼绵羊  阅读(350)  评论(0编辑  收藏  举报