|
|
在
關聯映射中,如一對一、一對多、多對一等,都有設定cascade為CascadeType.ALL,這表示儲
存其中一方實例時,若有參考至另一方實例,另一方實例也一併儲存,這個稱之為聯級(Cascade)操作。 預設是不使用聯級操作,而可設定的聯級操作如下所示:
在 一對多 中略為介紹過Fetch模式,FetchType.LAZY時, 除非真正要使用到該屬性的值,否則不會真正將資料從表格中載入物件,所以EntityManager後,才要載入該屬性值,就會發生例外錯誤,解決的方式 之一是在EntityManager關閉前取得資料,另一個方式則是標示為FetchType.EARGE, 表示立即從表格取得資料。 一些標註的Fetch模式有其預設值,例如:
不過,即使標註為FetchType.LAZY,此一 標註僅為建議,實作廠商仍可以將之實作為FetchType.EARGE。 |