模型 class 的对象保存顺序是什么?
What is the order of saving objects of a Model class?
我有一个 JSON 的 POJO class,如下所示:
public class Portcall {
private Long id;
.
.
PreviousPortCall previousPortCall;
NextPortCall nextPortCall;
.
}
这里所有的3个classes-PortCall,PreviousPortCall,NextPortCall都用@Document注解。
PortCall.java 中的任何更改都会影响其紧邻的前一个和下一个对象,这些对象由 PreviousPortCall 和 NextPortCall 引用
如果我更新 Mongo 数据库中的 PortCall.java,我应该按什么顺序保存对象?我应该保存 PreviousPortCall 和 NextPortCall 然后去保存 PortCall.java 或者反之亦然,为什么?
当您保存 Portcall
的对象时,该对象的完整状态将存储到数据库中。因此,如果您的字段 previousPortCall
和 nextPortCall
也定义为 @Entity
,它们将自动存储为 Portcall
实例状态的一部分。您根本不需要显式保存它们。
其次:只要您将多个对象存储在同一个 Transaction
中,存储的顺序并不重要,因为在提交事务时,完整的状态将在数据库中自动可见。
我有一个 JSON 的 POJO class,如下所示:
public class Portcall {
private Long id;
.
.
PreviousPortCall previousPortCall;
NextPortCall nextPortCall;
.
}
这里所有的3个classes-PortCall,PreviousPortCall,NextPortCall都用@Document注解。 PortCall.java 中的任何更改都会影响其紧邻的前一个和下一个对象,这些对象由 PreviousPortCall 和 NextPortCall 引用 如果我更新 Mongo 数据库中的 PortCall.java,我应该按什么顺序保存对象?我应该保存 PreviousPortCall 和 NextPortCall 然后去保存 PortCall.java 或者反之亦然,为什么?
当您保存 Portcall
的对象时,该对象的完整状态将存储到数据库中。因此,如果您的字段 previousPortCall
和 nextPortCall
也定义为 @Entity
,它们将自动存储为 Portcall
实例状态的一部分。您根本不需要显式保存它们。
其次:只要您将多个对象存储在同一个 Transaction
中,存储的顺序并不重要,因为在提交事务时,完整的状态将在数据库中自动可见。