如何防止 Java Web-start 应用程序中丢失更新问题?这种情况是,如果 2 个用户正在访问同一条记录,而一个人只是进行了一些修改并更新了数据库。其他用户仍然拥有旧数据,并且在不知道第一个用户已更改数据的情况下,他进行了一些修改并更新了数据库。这导致第一个用户丢失更新。
我需要确保在保存应用程序之前需要将记录与数据库进行比较,如果发现更改,则需要通知用户,并且我需要以某种方式确保用户在当前用户之后看到更改可以应用他的更改并再次提交给数据库。
以下是我的 Java Web Start 应用程序的详细信息:
有什么方法可以实现吗?
请多多指教。
提前致谢
也许会保持版本号记录。
例如每条记录都会维护一个记录版本号。当客户端收到客户端时,它也会收到版本号。修改后,服务器会将记录号与数据库中的记录号进行比较,如果
未发生更改,则使用递增的版本号写入新记录。 然后,第二个客户端将具有相同的记录号(即两个客户端都正在更新记录)。这次服务器会识别出版本号已更改,并拒绝更新。
请注意,存在各种实施选项。数据库可以使用记录号或时间戳来实现这一点。数据库可以维护编辑历史记录,或者只是记录的最新版本。