JPA和hibernate對刪除操作的不同
摘要: 在hibernate里面調用session的delete方法以后,無論這個被刪除的對象有沒有被人外鍵引用到,都可以被刪除,并且此時的外鍵設為 null,也就是說他會自動幫我們去查看他被誰引用到了。然后把引用全部去掉后,再把自己刪掉。而在JPA里面,如果調用 EntityManager.remove方法時,傳進去的對象,有被外鍵引用到,則會失敗。因為JPA里面的實現就是直接執行delete語句,也不管他有沒有被外鍵引用,此時,當然會出錯了。
閱讀全文
posted @
2008-10-21 08:23 千里冰封 閱讀(6062) |
評論 (6) 編輯
使用JPA的不同實現的配置
摘要: 以前使用JPA的實現是toplink,現在改為hibernate,所以要修改persistence.xml文件,兩者的配置有一些不一樣,并且在 EE環境下面和SE的環境下面也有不一樣,還有一點,那就是當persistence.xml里面有些格式出錯的時候,雖然出錯的不是我們需要的那個單元,但也會使得整個persistence.xml報廢。
閱讀全文
posted @
2008-10-19 18:38 千里冰封 閱讀(5059) |
評論 (3) 編輯
為glassfish配置多個domain
摘要: 在開發的過程中,我們可能需要將生產環境和調試環境分開來,這樣才能保證安全性,但是安裝兩個glassfish又不太可能,因為它太龐大了。另外做為一個工程發布也不太方便,每次都要將工程名改來改去,并且綁定的EJB在同一個域內里是不能同名的。這樣的話,要改變的東西實在是太多了。
我們可有以第三種方法,那就是為glassfish添加另外的domain,一個domain跑我們的真實環境,一個domain跑我們的測試環境,因為是同一個glassfish,所以也不會存在從測試到真實環境的移植問題。以后只要改一個domain就可以了。我們在安裝glassfish的時候,它已經默認為我們安裝了一個domain,那就是domain1.
閱讀全文
posted @
2008-10-14 22:59 千里冰封 閱讀(6022) |
評論 (2) 編輯