0
我錯過了有關JPA級聯刪除的內容 - 我真的很感激這裏的指針。JPA Spring數據級聯刪除組合多對多關係
我有一個模型,簡化了這一問題,三種類型一的:
- 用戶設置自己的一切
- 用戶可以有許多組
- 用戶可以有很多話題
一主題可以添加到許多組。
如果用戶被刪除,所有團體和主題都將被刪除
- 如果一個組被刪除,主題是從該組刪除,但如果主題被刪除,不會刪除
- ,它從組中刪除和用戶,但用戶和組仍然
所以我只是試圖不同的級聯每春季的數據文檔,並沒有得到我描述的結果。我的瀑布錯了 - 目前,如果我刪除了一個主題,該組和用戶被刪除,所以索引是雙向的,這不是我想要的。
用戶:
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "owner")
private Set<Topic> topics;
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, mappedBy = "owner")
private Set<Group> groups;
組:
@ManyToMany(cascade = {CascadeType.PERSIST})
private Set<Topic> topics;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="user_id")
@OneToOne(mappedBy = "owner", cascade = CascadeType.ALL)
private User owner;
主題
@ManyToMany(mappedBy = "topics")
private Set<EntityGroup> groups;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="user_id")
@OneToOne(mappedBy = "owner", cascade = CascadeType.ALL)
private User owner;