乐观锁

时间:2016-07-13 13:04:54

标签: java jpa optimistic-locking

我想对乐观锁定产生疑问,

在更改另一个用户2已经更改了相同表单(已保存)的表单时,有没有办法告诉用户1,而无需等待用户1完成所有更改,然后知道该记录已被用户更改2?

如何做到这一点的任何例子?

2 个答案:

答案 0 :(得分:1)

我认为user1必须尝试保存才能知道该记录已经使用JPA技术进行了更改。 但您可以进行自定义开发以检查记录更新和选择进行编辑的记录,并通过websockets primefaces发送警报通知,但这并非易事。

答案 1 :(得分:0)

您可以将UpdatePolicy设置为VERSION_REQUIRED,您必须使用DocumentDescriptor write()版本(修改文档时)和delete()方法。如果更改标识符未更改,则写入或删除操作会成功。如果其他人更改了文档以便创建新版本,则操作将因抛出异常而失败。

来源: Optimistic Locking