CascadeType.MERGE在多对多关系中的目的是什么?

时间:2017-10-08 00:06:22

标签: java hibernate jpa orm spring-data

假设我们有一个Post类,其标记引用为List:就像这样(Original source):

@ManyToMany(cascade = { 
    CascadeType.PERSIST, 
    CascadeType.MERGE
})
@JoinTable(name = "post_tag",
    joinColumns = @JoinColumn(name = "post_id"),
    inverseJoinColumns = @JoinColumn(name = "tag_id")
)
private List<Tag> tags = new ArrayList<>();

为什么我们需要CascadeType.MERGE?这是因为,例如,我们从列表中删除标签,然后我们保留帖子,因此我们希望结果“合并”(从多个连接表中的帖子中取消映射标签)与当前数据库状态?

0 个答案:

没有答案