国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

SpringBoot JPA懶加載失效的解決方案(親測有效)

瀏覽:112日期:2023-02-19 18:55:53
SpringBoot JPA懶加載失效

使用springBoot JPA 對兩個實(shí)體類進(jìn)行雙向關(guān)聯(lián),并設(shè)置了懶加載,如下:

SpringBoot JPA懶加載失效的解決方案(親測有效)

然后在查詢后用到了roles,會報(bào)錯,

SpringBoot JPA懶加載失效的解決方案(親測有效)

解決辦法如下:

1. 在配置文件中加入:

spring.jpa.properties.hibernate.enable_lazy_load_no_trans =true

2. 如果你是在SpringBoot的測試類 中使用報(bào)錯,則在方法上加入@Transactional注解

在百度查詢時發(fā)現(xiàn)有人說 修改該配置: spring.jpa.open-in-view=true ,經(jīng)測試,該項(xiàng)配置默認(rèn)就是true,并且沒有用。

JPA懶加載引起的bug

自己閑暇用JPA寫了個ORM操作的練習(xí),發(fā)現(xiàn)一個詭異的問題。

如下圖

SpringBoot JPA懶加載失效的解決方案(親測有效)

1:讀取的產(chǎn)品product的實(shí)際庫存stock是20,凍結(jié)庫存frozenStock是0;

2:減少該產(chǎn)品實(shí)際庫存5,凍結(jié)庫存+5;

3:重新查詢該產(chǎn)品

問題:兩個單元校驗(yàn),發(fā)現(xiàn)實(shí)際算出來的庫存差值不是5是0!

博主通過查詢商品信息findProductById()方法得到答案。如下圖,調(diào)用方法返回的實(shí)體類product的屬性都是null,F(xiàn)7進(jìn)入調(diào)試才去查詢產(chǎn)品的信息,查完之后才打印產(chǎn)品的名稱,即類的'懶加載'。所以在步驟1之后,步驟2修改了庫存,重新讀取product的庫存已經(jīng)是扣減過的15了。

解決:

在實(shí)體類上加上@Proxy(lazy = false)取消懶加載,直截了當(dāng)(暫時沒想到別的)

SpringBoot JPA懶加載失效的解決方案(親測有效)SpringBoot JPA懶加載失效的解決方案(親測有效)

SpringBoot JPA懶加載失效的解決方案(親測有效)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 欧美一级鲁丝片免费看 | 99国产成人高清在线视频 | 国内精品美女写真视频 | 成人三级在线观看 | 最新国产中文字幕 | 亚洲国产精品自在现线让你爽 | 日本一级在线播放线观看视频 | 一区二区三区免费在线观看 | v片在线看| 手机看片日韩日韩国产在线看 | 国内主播福利视频在线观看 | 日本精品久久久久久久久免费 | 97se亚洲综合在线韩国专区福利 | 国产成人mv 在线播放 | 韩国欧洲一级毛片免费 | 精品在线播放视频 | 亚洲加勒比久久88色综合一区 | 欧美牛逼aa | 美女视频网站黄色 | 亚洲高清视频在线播放 | 97久久草草超级碰碰碰 | 青青草国产免费一区二区 | 免费一级欧美片在线观看 | 国产99视频精品草莓免视看 | aaa大片| 免费a级毛片视频 | 色老头一级毛片 | 亚洲女人在线 | 在线观看 a国v | 欧美亚洲中日韩中文字幕在线 | 国产成人精品亚洲日本语音 | 国产亚洲精品成人久久网站 | 久草在线视频免费播放 | 先锋影音xfyy5566男人资源 | 精品久久久久久久高清 | 日本美女高清在线观看免费 | 奇米色88欧美一区二区 | 手机看片福利在线 | 久久草在线精品 | 无毒在线 | 日本高清免费视频www |