Hibernate在另一个实体中保存三个实体

时间:2017-11-27 13:12:22

标签: java hibernate

长期困扰我的小问题。

我有三个实体:A,B和C. 我想保存实体D中的所有三个实体。 实体A,B和C与实体D具有OneToMany关系。 Entitiy D与A,B和C具有ManyToOne关系。

此关系中的父母是A,B和C.这意味着如果删除A,B或C,则还必须删除包含其中一个树实体(A,B或C)的实体D.

示例

在亲子关系中,我已经知道如何保存孩子。 父母(P)和儿童(C)

c.setParent(P);
p.setChild(c);
p.save();

我的情况

在我的情况下,父母是A,B和C.孩子是D。

a.setChild(D);
b.setChild(D);
c.setChild(D);
d.setParents(A, B, C);
a.save();
b.save();
c.save();

保存3次(在“父母”一侧)在数据库中获取3条记录,我显然想要一条记录。 我怎样才能解决这个问题? 如果我理解正确,你需要在创建孩子时保存在父方面。

修改

创建实体D时已存在实体A,B和C.

0 个答案:

没有答案