2011-06-16 82 views
1

比方說,我有三個對象: 用戶,盒,產品要刪除的孩子,而不是對其他對象孩子的引用

用戶得到了一個箱子,箱子有用戶具有不同的產品引用在他的箱子裏。

用戶基本上可以決定他想在他的盒子裏放哪些產品。

如果我刪除用戶,我希望刪除框也是如此,但我不希望產品被刪除。

我該如何去做這個在冬眠?

我的嘗試是這樣的:

在User.hbm.xml

,有一個入口

<many-to-one name="theBox" column="BOX" 
    class="com.example.Box" 
      unique="true" cascade="all"/> 

然而,似乎想刪除產品,以及...

回答

1

不要使用cascade="all"。所有的意思是「全部」。你可以使用save, update。請參閱transitive persistance上的文檔。

從該文檔中,您可能需要嘗試cascade="persist,merge,save-update".

+0

而應該使用什麼? – JohnSmith 2011-06-16 14:26:09

+0

@johnSmith,取決於你想要什麼。看看我上面描述的文檔 – hvgotcodes 2011-06-16 14:26:55

+0

我想實現 – JohnSmith 2011-06-16 14:33:01