Java 坚持使用特定的修订号

Java 坚持使用特定的修订号,java,hibernate,hibernate-envers,Java,Hibernate,Hibernate Envers,我阅读了Hibernate Envers文档,但不明白如何让以下内容发挥作用: 我有两个实体:地址和顺序。订单上有地址 创建订单时,我希望它保持当前的地址修订,因此,如果相同的地址更改(生成新修订),订单仍然指向创建时的地址修订 我怎样才能做到这一点呢?这在Envers中是不可能的,事实上,这不是Envers的用途 在你的情况下,你有两个不同的地址“身份”——旧的和新的。因此,它们应该是独立的实体。改变的不是同一个地址实体 然后,您可以使用enver跟踪关系的变化。假设您有订单O,地址A1和A2

我阅读了Hibernate Envers文档,但不明白如何让以下内容发挥作用:

我有两个实体:地址和顺序。订单上有地址

创建订单时,我希望它保持当前的地址修订,因此,如果相同的地址更改(生成新修订),订单仍然指向创建时的地址修订


我怎样才能做到这一点呢?

这在Envers中是不可能的,事实上,这不是Envers的用途

在你的情况下,你有两个不同的地址“身份”——旧的和新的。因此,它们应该是独立的实体。改变的不是同一个地址实体

然后,您可以使用enver跟踪关系的变化。假设您有订单O,地址A1和A2。最初的关系是:O->A1。但是,当地址改变时,您可以将关系更改为:O->A2,这将反映在历史中


但是,当您读取实体时,总是会得到最新版本。“当前”实体不能指向历史条目。

这在Envers中是不可能的,事实上,这不是Envers的用途

在你的情况下,你有两个不同的地址“身份”——旧的和新的。因此,它们应该是独立的实体。改变的不是同一个地址实体

然后,您可以使用enver跟踪关系的变化。假设您有订单O,地址A1和A2。最初的关系是:O->A1。但是,当地址改变时,您可以将关系更改为:O->A2,这将反映在历史中

但是,当您读取实体时,总是会得到最新版本。“当前”实体不能指向历史条目