jpa方式查看实体或其中一个关系是否已更改版本

时间:2014-08-18 17:07:46

标签: java jpa entity jpa-2.0

我正在寻找一种方法来查明数据库中是否已更改分离的实体。此外,我想知道它是否与cascade = CascadeType.MERGE有任何关系 已经改变。实体及其某些关系确实具有带@Version注释的版本字段。基本上,测试应该报告合并是否会抛出OptimisticLockException而不尝试合并本身。当然,我可以通过所有关系并比较版本字段,但我希望有一个更耐改变的解决方案。因此,如果有人在将来添加关系,则测试应该仍然有效,而不采用。

有没有标准的方法呢?

1 个答案:

答案 0 :(得分:0)

JPA 2.0Optimistic LockingPessimistic Locking

我认为,您已经知道Optimistic Locking主要实体,如下所示。

enter image description here

我正在寻找一种方法来确定数据库中是否已更改分离的实体?

下面的示例是Optimistic Locking处理分离实体。它正在使用LockModeType.OPTIMISTIC_FORCE_INCREMENT

enter image description here