我对Hibernate还是陌生的,因此想问一些有关在Hibernate中保存对象的说明。
让我们假设我们有一个对象,该对象具有嵌套的对象,因此与其他对象的关系称为
。// Main object I would like to save
@Entity
public class A {
private Long id;
private String name;
private B type; // Has only specific one type from another table
private C anotherType; // Has only specific anotherType from another table
}
// Several type B in database table
@Entity
public class B {}
// Several type C in database table
@Entity
public class C {}
现在让我们假设,当发出POST请求时,我应该获得一个DTO,该DTO包含将此类A保存到数据库中的信息,但是它具有嵌套的对象,例如B和C。 这样保存到数据库如何工作?我的意思是我应该已经在DTO中拥有整个B和C对象,然后将它们全部转换为实体进行保存吗?还是我应该只拥有id值(C id和B id),然后查询特定的存储库,获取实体,通过设置器将它们设置为A,然后保存?
所以我的主要问题是在那种情况下保存数据最有效吗?