【发布时间】:2014-02-26 04:41:49
【问题描述】:
我有两门课:
- 父母
- 孩子
在数据库子表中有一列ParentId -> 典型的One(Parent)-> Many(Children)关系
现在我创建了两个实体,它们
public class Parent
{
@OneToMany(mappedBy="Parent", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
public Set<Child> getChildern()
{
...
}
}
public class Child
{
@ManyToOne(fetch = FetchType.EAGER, cascade=CascadeType.ALL)
@JoinColumn(name="ParentId")
public Parent getParent()
{ ... }
}
现在我有两种情况:
- 父级被删除 -> 会发生什么?
- 孩子被删除 -> 会发生什么?
额外问题:
- 我是否总是需要创建密钥 OneToMany 和 ManyToOne 的两个部分,或者我可以只创建 ManyToOne 并且不在乎我有孩子的父母吗?
- 什么可能导致休眠给我一个消息外键约束违反没有孩子的父母?
【问题讨论】:
-
您可能会在这里找到所有答案:docs.jboss.org/hibernate/orm/3.3/reference/en/html/…
-
抱歉它没有回答我的问题:(
标签: java hibernate jpa cascade entities