@Entity
@Table(name = "parent")
public class Parent implements Serializable {
private String name;
private List<Child> childs;
@OneToMany(mappedBy="parent")
@Cascade({CascadeType.SAVE_UPDATE, CascadeType.DELETE})
public List<Child> getChilds() {
return childs;
}
@Id
@Column(name="parent_name")
public String getName() {
return name;
}
}
&GT;
@Entity
@Table(name = "child")
public class Child implements Serializable {
@JoinColumn(name="parent_name")
private Parent parent;
public Parent getParent() {
return parent;
}
public void setParent(Parent parent) {
this.parent = parent;
}
}
当我使用session.save(parent)时,它将父和子保存在数据库中但是列中 子表中的父标识符将保持为null。那有什么问题?
答案 0 :(得分:0)
在子实体上试试这个:
@ManyToOne(targetEntity = Parent.class)
@JoinColumn(name = "parent", nullable = false)
答案 1 :(得分:0)
如果我将OneToMany声明为单向,则效果很好。