Java - 许多用户同时编辑相同数据库字段的Web应用程序

时间:2012-06-13 04:29:58

标签: java database servlets concurrency

我正在创建一个网站,其中许多用户同时编辑数据库中的特定字段(假设所有用户都进行相同的编辑)。我怎么能应付这个?我只需要一个用户就可以通知他们的编辑已成功完成。

2 个答案:

答案 0 :(得分:3)

使用表格中的版本号,检查是否有正确的版本,否则会抛出异常并显示用户消息,表明数据已更新并显示最新数据

答案 1 :(得分:2)

这是一个复杂的问题,有许多可能的解决方案。基本上,您需要一种方法来锁定表或检测并发更新。执行此操作的常用技巧是向表中添加版本数据。在每次更新时,您都会检查最初从数据库中检索数据的版本,而不是现在的数据版本。如果它们不同,您知道其他人在更新过程中更改了数据。

像Hibernate这样的项目可以为你自动完成其中一些,所以你应该考虑使用它来帮助实现表版本。