2015-02-11 67 views
0

我有一個java.uitl.Set,它充滿了我的一個持久化對象n1。這個集合是我的持久化對象n2的私有成員。他們處於一種親密的關係。所以n2可以有很多n1,但n1只能有一個n2。javax.persistence - 刪除oneToMany關係的項目

這是我的問題;
我添加一個n1到n2的集合並提交它。完成完美。 n1現在在n1表中,而n2在n2表中更新。但是,如果我再次從集合中刪除此n1併合並n2,則會更新n2,但刪除的n1不會從n1表中刪除。我試着用cascadetype和orphanRemoval或者它被調用。有人可以幫助我嗎?

感謝,
巴斯蒂

編輯:
解決

回答

0

這似乎是一個孤兒清除問題。將下面的註釋上@OneToMany網站,而不是在@ManyToOne網站:

@OneToMany(orphanRemoval=true, cascade={CascadeType.ALL})

+0

它已經被設置爲一對多的一面。在許多方面,你不能設置orphanremoval的標誌。一個孤兒描述了一個獨立的項目,因爲它不再屬於多人關係。在許多方面它沒有任何意義。無論如何,我剛剛提到manytoone解釋關係 – Basti 2015-02-11 10:45:43

+0

,您的帖子幫助了我。我很愚蠢,渦輪巨大真棒愚蠢。 cascadetype只是爲了合併。如果cascadetype說不 - - 我是一個白癡,對不起 – Basti 2015-02-11 10:48:39

+0

如何orphanremoval允許刪除掉落物品這樣的事情總是發生在我身上:-) – NwDev 2015-02-11 10:56:47