欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決spring boot hibernate 懶加載的問題

 更新時間:2020年10月19日 08:35:15   作者:碼農(nóng)  
這篇文章主要介紹了解決spring boot hibernate 懶加載的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

spring boot 是快速構(gòu)建微服務(wù)的新框架。

對于數(shù)據(jù)訪問問題可以直接使用jpa技術(shù),但是在單元測試發(fā)現(xiàn)spring jpa存在hibernate懶加載問題。

但是spring-boot沒有xml配置文件所以現(xiàn)在網(wǎng)絡(luò)上好多的解決方案并不能適用在spring boot框架中。在遇到該問題苦苦查詢后終于無意中發(fā)現(xiàn)了解決方案。

Spring application using JPA with Hibernate, lazy-loading issue in unit test

英文不好沒有細(xì)看,但是可以看到在spring-boot項目中如何通過application設(shè)置hibernate的配置選項。

spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true

在spring.jap.properties后面可以接hibernate的各種配置,然后陪孩子會被自動注入的hibernate實例中。

然后再次運(yùn)行單元測試全部通過,不在出現(xiàn)懶加載異常。

補(bǔ)充知識:Spring boot + hibernate 懶加載報錯:could not initialize proxy - no Session

項目背景

舊項目改造成Spring boot 項目,使用了舊配置的方式引入了hibernate(非jpa)

問題描述

后臺“對象.另一個對象”時報錯:could not initialize proxy - no Session,出現(xiàn)了懶加載問題。

原因分析

出現(xiàn)該錯誤的原因是Hibernate使用sessionFactory來管理session,我們每進(jìn)行一次數(shù)據(jù)庫操作時都會新建一個session對象,當(dāng)我們操作完成后,hibernate就會在dao層立即關(guān)閉該session。所以當(dāng)我們操作類中另一個類的具體屬性時,因為session已經(jīng)關(guān)閉,就會報錯。

解決方法

引入對應(yīng)spring-orm的jar包,在spring boot 的啟動類中添加這段代碼:

@Bean 
 public OpenSessionInViewFilter openSessionInViewFilter(){
  return new OpenSessionInViewFilter();
 }

注意:以上僅僅適合傳統(tǒng)方法引入hibernate,如果你使用的是jpa,那么需要改為

@Bean
 public OpenEntityManagerInViewFilter openEntityManagerInViewFilter(){
 return new OpenEntityManagerInViewFilter();
 }

以上這篇解決spring boot hibernate 懶加載的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis配置文件元素示例詳解

    MyBatis配置文件元素示例詳解

    在MyBatis框架的核心配置文件中,<configuration>元素是配置文件的根元素,其他元素都要在<contiguration>元素內(nèi)配置,這篇文章主要介紹了MyBatis配置文件元素,需要的朋友可以參考下
    2023-06-06
  • IDEA+Maven創(chuàng)建Spring項目的實現(xiàn)步驟

    IDEA+Maven創(chuàng)建Spring項目的實現(xiàn)步驟

    這篇文章主要介紹了IDEA+Maven創(chuàng)建Spring項目的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Json字符串內(nèi)容比較超實用教程

    Json字符串內(nèi)容比較超實用教程

    這篇文章主要介紹了Json字符串內(nèi)容比較-超實用版,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • PageHelper插件實現(xiàn)服務(wù)器端分頁功能

    PageHelper插件實現(xiàn)服務(wù)器端分頁功能

    這篇文章主要為大家詳細(xì)介紹了PageHelper插件實現(xiàn)服務(wù)器端分頁功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • Java編程在方法中哪些時候需要參數(shù)

    Java編程在方法中哪些時候需要參數(shù)

    這篇文章主要介紹了Java編程在方法中哪些時候需要參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • java解析excel文件的方法

    java解析excel文件的方法

    這篇文章主要介紹了java解析excel文件的方法,這里整理相關(guān)的代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • java學(xué)習(xí)之一維數(shù)組中重復(fù)元素的去除

    java學(xué)習(xí)之一維數(shù)組中重復(fù)元素的去除

    關(guān)于一維數(shù)組中有重復(fù)的元素該怎么剔除,作為java初學(xué)者的我整理出不調(diào)用任何特殊庫的基礎(chǔ)方法,這種思想在其他語言也適用,有需要的朋友可以借鑒參考下
    2021-09-09
  • SpringBoot實現(xiàn)連接nacos并支持多環(huán)境部署

    SpringBoot實現(xiàn)連接nacos并支持多環(huán)境部署

    這篇文章主要介紹了SpringBoot實現(xiàn)連接nacos并支持多環(huán)境部署方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • MyBatis框架搭建與代碼解讀分析

    MyBatis框架搭建與代碼解讀分析

    MyBatis是一個靈活的持久層框架,適合與數(shù)據(jù)庫交互,支持自定義SQL和高級映射,這篇文章給大家介紹MyBatis框架搭建與代碼解讀,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • springboot配置多數(shù)據(jù)源的實例(MongoDB主從)

    springboot配置多數(shù)據(jù)源的實例(MongoDB主從)

    下面小編就為大家分享一篇springboot配置多數(shù)據(jù)源的實例(MongoDB主從),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12

最新評論