0
我們重新使用了Grails,當然在它的O/R中使用了Hibernate。在一個實例中,我們有多個請求試圖刪除同一個對象。第一個線程將被刪除,而第二個嘗試刪除該對象的線程將拋出StaleStateException。這是預期的。據商務部:刪除原因StaleStateException
http://docs.jboss.org/hibernate/envers/3.6/javadocs/org/hibernate/StaleStateException.html
此異常:現在Also occurs if we try delete or update a row that does not exist.
,在我們的情況下也不例外。我們不在乎它已被刪除。我們不希望在刪除之前進行檢查,我們只是想進行異常處理,因爲它不是一個例外。
如果嘗試刪除並且對象不在那裏,我們真正想要做的就是不會有此異常拋出。
有沒有辦法用Grails/Gorm做到這一點?
我擁有的最佳理想是使用HSQL的SQL進行刪除,而不是使用hibernate/grails API。
還有更好的嗎?
我曾想過這一點,但真的喜歡,如果異常被拋出從來沒有。 –
那麼完全刪除異常,你可以遠離休眠源代碼並重新編譯它。堆棧跟蹤完全告訴你在什麼文件和行中hibernate生成異常。 –