【发布时间】:2016-05-30 07:03:03
【问题描述】:
我们有一个使用 JPA 和 Eclipselink 的 Java EE 应用程序。我们对所有实体使用乐观锁定。 我们的一个主要实体有一个“lastConnected”属性,每次我们收到来自客户端的请求时都会更新该属性。异步可能会有其他任何属性的其他更新,因此有时这会导致 OptimisticLockException。
是否有可能在不增加实体的版本字段的情况下更新“lastConnected”属性?我真的不在乎我的“大”更新是否会覆盖“lastConnected”更改,所以不希望这个小更新导致 OptimisticLockException。
当然可以将“lastConnected”属性移动到它自己的实体中,但我不太喜欢这种解决方案。
【问题讨论】:
-
AFAIK,您不能使用 自动 锁。锁(乐观或悲观)是行明智的,您要求进行字段差异。
-
嗯,它并不是真正的字段锁——它更像是“在发生冲突时丢弃低优先级事务”
标签: java jpa eclipselink