簡體   English   中英

休眠級聯以保存父級和子級

[英]hibernate cascade to save parent and child

我有2節課。 父母和孩子。 如下:

@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;
    }    

}

>

@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)時,它將父級和子級保存在數據庫中,但子級表中父級標識符的列將保持為空。 那是什么問題呢?

在子實體上嘗試一下:

 @ManyToOne(targetEntity = Parent.class)

 @JoinColumn(name = "parent", nullable = false)

如果我將OneToMany聲明為“單向”,則效果很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM