天天看點

Hibernate的資料删除,更改

其他未給出代碼,請參考上一篇....

一.資料的删除

方法1.從“多”的一方進行資料的删除

books.hbm.xml檔案不變:

publishers.hbm.xml檔案:

在myhibernatedao.java中添加如下代碼:

在hibernateservlet.java中添加如下代碼

注意如果沒有book1.getpublishers().getbooks().remove(book1); book1.setpublishers(null);這兩句,會出現 org.hibernate.objectdeletedexception: deleted object would be re-saved by cascade (remove deleted object from associations)這個異常,主要是因為books和publishers二者的級聯關系。

是以我們可以先将級聯斷開,然後再進行删除“多”的一方。

方法2.從“一”的這一方進行删除,這樣的話就是和“一”這一方相關聯的“多”的一方都會被删除

在hibernateservlet.java中添加如下代碼:

publishers.hbm.xml 和 books.hbm.xml 不用改變

二.資料的删除

其他不變....