1 回答

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
級(jí)聯(lián)僅適用于聲明它的實(shí)體。即,
public class MappedRole {
@ManyToOne(cascade = { CascadeType.REMOVE }, fetch = FetchType.EAGER)
@JoinColumn(name = "TREENODE_ID", nullable = false)
private TreeNode treeNode;
當(dāng)刪除a時(shí),應(yīng)刪除所有對(duì)應(yīng)TreeNode的 s 。MappedRole
您似乎在or中沒有反向@OneToMany關(guān)系,因此當(dāng)您刪除 a or時(shí),JPA 可以級(jí)聯(lián)任何內(nèi)容都沒有關(guān)系。TreeNodeStandortTreeNodeStandort
像這樣嘗試:
@MappedSuperclass
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class TreeNode ... {
@OneToMany(cascade= { CascadeType.REMOVE }, mappedBy="treeNode" )
private List<MappedRole> mappedRoles;
并確保將每個(gè)MappedRole也放入mappedRoles其擁有的列表中TreeNode。
添加回答
舉報(bào)