unable to evaluate the expression Method threw 'org.hibernate.LazyInitializa錯誤


問題描述

spring jpa 在寫服務層跑單元測試的時候出現
unable to evaluate the expression Method threw 'org.hibernate.LazyInitializa

解決思路

問題大概意思就是,hibernate的懶加載出現異常,由於seesion被釋放了。

自己調試了發現是在找下一級關系的時候,無法找到目標實體類導致的。

網上找過一些方法都是讓你把hibernate實體映射的由
fetch=FetchType.LAZY改為這種FetchType.EAGER但是也是無補於事。

直到看到這篇博客他給了一個解決方案在service層的方法添加
@Transactional開啟事務,最后完美解決了,下一級的關系也找到了。

解決方案

在service層的方法上添加@Transactional開啟事務就行了
因為這樣可以保持seesion,使其不被關掉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM