Vaadin的书中说我可以设置一个乐观锁定列,如下所示:
tq.setVersionColumn( “OPTLOCK”);
然而它也说:
TableQuery假定数据库将通过使用实际的VERSION列(如果有问题的数据库支持)或通过触发器或类似的机制来更新版本列
如何处理更新数据库中的版本列?
非常感谢任何帮助
答案 0 :(得分:1)
如果您正在使用JPA或其实现,您应该能够使用以下命令注释您的bean:
@Version
private Long version;
因此,每次持久保存bean时,版本号将自动增加一个。 如果bean在持久化期间具有较低/不同的版本号,则意味着它在此期间被更改并且JPA抛出了乐观锁定异常。