摘要:項目使用的版本進(jìn)行開發(fā),里面使用到,而這個版本自帶的實現(xiàn)是的版本。這個版本里面的延遲加載是沒有問題的,當(dāng)你設(shè)置時,關(guān)聯(lián)的對象在你沒有使用的時候,是不會發(fā)出的。這個問題,在升級版本后是解決了的。
項目使用springboot的1.5.19版本進(jìn)行開發(fā),里面使用到JPA,而springboot這個版本自帶的JPA實現(xiàn)是Hibernate的5.0.12版本。
這個版本里面的延遲加載是沒有問題的,當(dāng)你設(shè)置 fetch = FetchType.LAZY 時,關(guān)聯(lián)的對象在你沒有使用的時候,是不會發(fā)出sql的。
但升級了springboot的2.1.3后,依賴的Hibernate已經(jīng)去到5.3.7版本了。這時候延遲加載就失效了,就算只是查詢一個字段,也會再發(fā)多一條關(guān)聯(lián)對象的SQL出來。
這個問題,在升級Hibernate5.4.2版本后是解決了的。
而對于使用springboot 2.1.3的話,需要先排除掉spring自身加載的Hibernate版本,自己替換成Hibernate5.4.2版本才可以。
不知道有沒有人遇到這問題,本人測試,Hibernate5.2.x時候就已經(jīng)出現(xiàn)了,但好像一直沒有修復(fù)。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/73953.html
摘要:訂單快照,比如我們昨天購買的商品材料,其當(dāng)時的零售價是元,但今天就變成了元。此時我們在網(wǎng)頁上看到的材料價格是元,而我們付款的時候是元。商家是退給我們多少錢呢元,還是元當(dāng)然,是元,而不是元。這元存儲在哪里呢就是訂單快照表。 導(dǎo)讀 最近見同事在做訂單和訂單材料快照這方面的業(yè)務(wù),這其實就像淘寶上的商品,不過,這里是材料商品了。它一共涉及到 五張表 : 材料表,材料的詳細(xì)信息 訂單表,用戶購...
摘要:關(guān)聯(lián)關(guān)系的關(guān)聯(lián)關(guān)系定義上,感覺并不是很靈活,姿勢也比較難找。如,定義在關(guān)聯(lián)關(guān)系上的參數(shù)可以設(shè)置級聯(lián)的相關(guān)東西。因為序列化會涉及到實體類關(guān)聯(lián)對象的獲取,會觸發(fā)所有的關(guān)聯(lián)關(guān)系。 接(4) - Database 系列. Java Persistence API,可以理解就是 Java 一個持久化標(biāo)準(zhǔn)或規(guī)范,Spring Data JPA 是對它的實現(xiàn)。并且提供多個 JPA 廠商適配,如 Hi...
摘要:非集合屬性非集合屬性的延遲加載相對比較復(fù)雜。僅通過注解是無法實現(xiàn)延遲加載的。但是在一對一關(guān)系中,延遲加載是有陷阱的。這樣一來,就會立即為配置延遲加載的實體生成一個動態(tài)代理類。 Hibernate中,延遲加載針對屬性類別可以分為兩類,一類是延遲屬性加載,另一類是延遲關(guān)聯(lián)實體加載。 屬性延遲加載 屬性有可以分為兩種類型:一種是集合屬性,一種是非集合屬性(如String、Integer……)...
摘要:說明首先來說是一個持久化規(guī)范,也就是說當(dāng)我們用的時候我們不需要去選面向的編程了,這樣就大大降低了偶和度了引入是一種規(guī)范,那么它的編程有哪些要求呢引入下載的包導(dǎo)入文件夾,然后我們的在下面加上一個目錄在該文件夾下面加上一個文件,這個文件的規(guī)范 說明 首先來說JPA是一個持久化規(guī)范,也就是說當(dāng)我們用jpa的時候我們不需要去選面向hibernate的api編程了,這樣就大大降低了偶和度了 引入...
閱讀 1476·2021-09-22 15:43
閱讀 2191·2019-08-30 15:54
閱讀 1189·2019-08-30 10:51
閱讀 2116·2019-08-29 18:35
閱讀 452·2019-08-26 11:58
閱讀 2512·2019-08-26 11:38
閱讀 2468·2019-08-23 18:35
閱讀 3672·2019-08-23 18:33