0

我有一个 JSON 的 POJO 类,如下所示:

public class Portcall {

   private Long id;
   .
   .

   PreviousPortCall previousPortCall;

   NextPortCall nextPortCall;

   .
}

这里所有的 3 个类——PortCall、PreviousPortCall、NextPortCall 都用@Document 进行了注解。PortCall.java 中的任何更改都会对其直接的上一个和下一个对象产生影响,这些对象由 PreviousPortCall 和 NextPortCall 引用如果我在 Mongo DB 中更新 PortCall.java,我应该以哪种顺序保存对象?我应该先保存 PreviousPortCall 和 NextPortCall,然后再保存 PortCall.java,反之亦然,为什么?

4

1 回答 1

1

当您保存 的对象时Portcall,该对象的完整状态将存储到数据库中。因此,如果您的字段previousPortCallnextPortCall也被定义@Entity,它们将作为Portcall实例状态的一部分自动存储。您根本不需要明确保存它们。

其次:只要您在同一个 中存储多个对象Transaction,存储顺序无关紧要,因为提交事务时,完整状态将在数据库中原子可见。

于 2021-01-24T20:10:06.120 回答