fetch的預設設定:
jpa介面預設為一對多為lazy,多對一為eager,但是hibernate反向工程生成entity時,多對一為lazy,需要手動改為eager。
問題描述:
一開始因為使用的是hibernate的預設設定,出現因為懶載入報錯的問題,
由於是懶載入,關聯物件不立刻載入(即從資料庫讀入到記憶體),在使用到的時候載入;
如果在session中(session未關閉),什麼時候要用,就什麼時候取(再次訪問資料庫),這個沒有問題,
但是,在session外(session已關閉),就不能再取了。如果這時候要去取,就會報錯,沒有session可用。
解決方法:
就是把@manytoone中的fetch設定為fetchtype.eager ,用eager時,因為在記憶體裡,所以在session外也可以取。
之前用的是,網上搜尋的方法,在主表的@onetomany中加上fetch=fetchtype.eager,報錯解除。
緊接著出現,該錶的記錄不能刪除的問題,網上查了一下,說是因為加的那個fetch=fetchtype.eager的問題,
接著按上面的描述重新修改了一下,兩個問題都沒有了。
關於fetch 跨域的問題
最近在拿react dva cli antd做個專案練手,搭建完專案後發現在做請求的時候走的是fetch,用的時候在跨域請求的時候出現了不少問題。在網上查了一下解決辦法,提供了乙個在options mods no cors 配置 發現確實可以請求成功了,但是會出現下面的情況 請求成功但是看不到返回資...
關於系統函式過載和屬性的問題
using system public class person set public int age set public override string tostring public static void main myperson myperson.name fanjun myperson...
關於屬性的一些問題
position表示實體當前位置實體的id,這個值在不斷變化 而每個實體自身的id自始至終不會改變。positionhistory儲存該實體經過的實體列表,但我發現有些實體這個屬性沒有被定義 關於建築的屬性,有乙個名為edge的結構,推測應該是儲存建築所佔面積的座標表示形式。每乙個建築作為乙個實體佔...