spring boot 級聯查詢應用 LazyInitializationException 錯誤

錯誤信息:


org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: com.xxx.pojo.onttomany.Customer.orders, could not initialize proxy - no Session


屬於懶加載異常:默認是開啓的,在做級聯查詢的時候容易出現這樣的問題。

原因是查詢完主表(實體類)的時候,當次操作的數據庫連接已經關閉了,因是懶加載,在使用到數據的時候纔會去讀取數據庫中的數據,此時連接已經關閉了,就沒有連接可用,就不能再對數據庫進行操作。

三種解決方法:

1、關閉懶加載

2、使用@Transactional註解,把整個方法中的操作變成一組事務,都完成之後才關閉連接,有可能連接會一直被佔用。

3、讓連接在操作完成之後才關閉

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章