關於Jdon框架和Hibernate的整合,Banq大哥請進
之前我發過一個帖子,見http://www.jdon.com/jivejdon/thread/36736.html
弄了N久,終於弄明白了.
問題是could not initialize proxy - no Session,我一直以為是CloseSessionInViewFilter出了問題,導致還沒到View層Session就關閉了,後來發現不是這個原因,真正的原因是Jdon的快取和Hibernate的懶載入一起用才發生了錯誤.
說明:
一對多的關聯.
第一個請求我取出"一"的時候,"一"中的多是沒有從資料庫中載入的,然後顯示到頁面,之後CloseSessionInViewFilter把這個Session給關了,還沒完,同時Jdon的快取機制將這個"一"給快取了.
接下來第二個請求我要顯示詳細的"一",也就是說還要取出這個"一"中的"多",我getService(),然後
Big big=service.getBig(id)
再然後我還要裡面的"多"
Smalls smalls=big.getSmalls();
問題出來了could not initialize proxy - no Session.
問題就在於這個big物件是從Jdon的快取中得到的,Jdon並沒有去查資料庫,因為Jdon的快取中有,於是返回了big,但是當我getSmalls()是就一定會報錯了,因為這個big中根本就沒有smalls啊,只是個代理.
然後我就查Jdon的使用手冊,在Model中設定
setCacheable(false);
之後問題就解決了.
我沒有用到Jdon的CRUD功能.用到了分頁查詢.
我現在想的是,用了Hibernate就不能Jdon自帶的快取了嗎?
Banq大哥看下,我說的有沒有錯.謝謝啦~
弄了N久,終於弄明白了.
問題是could not initialize proxy - no Session,我一直以為是CloseSessionInViewFilter出了問題,導致還沒到View層Session就關閉了,後來發現不是這個原因,真正的原因是Jdon的快取和Hibernate的懶載入一起用才發生了錯誤.
說明:
一對多的關聯.
第一個請求我取出"一"的時候,"一"中的多是沒有從資料庫中載入的,然後顯示到頁面,之後CloseSessionInViewFilter把這個Session給關了,還沒完,同時Jdon的快取機制將這個"一"給快取了.
接下來第二個請求我要顯示詳細的"一",也就是說還要取出這個"一"中的"多",我getService(),然後
Big big=service.getBig(id)
再然後我還要裡面的"多"
Smalls smalls=big.getSmalls();
問題出來了could not initialize proxy - no Session.
問題就在於這個big物件是從Jdon的快取中得到的,Jdon並沒有去查資料庫,因為Jdon的快取中有,於是返回了big,但是當我getSmalls()是就一定會報錯了,因為這個big中根本就沒有smalls啊,只是個代理.
然後我就查Jdon的使用手冊,在Model中設定
setCacheable(false);
之後問題就解決了.
我沒有用到Jdon的CRUD功能.用到了分頁查詢.
我現在想的是,用了Hibernate就不能Jdon自帶的快取了嗎?
Banq大哥看下,我說的有沒有錯.謝謝啦~
相關文章
- 【SSH框架】系列之 Spring 整合 Hibernate 框架框架Spring
- 關於Hibernate和hql語句的相關知識點
- 關於hibernate的 No row with the given identifier existsIDE
- Hibernate框架框架
- Spring 整合 HibernateSpring
- Hibernate (開源物件關係對映框架)物件框架
- 關於 SAP Spartacus 和 SmartEdit 整合的問題
- 在Hibernate中關於Oracle sequence的使用KHOracle
- Hibernate框架簡介⑤框架
- Hibernate框架簡介④框架
- Hibernate框架簡介③框架
- Hibernate框架簡介②框架
- Hibernate框架簡介①框架
- Hibernate框架學習框架
- JavaFX 整合 Sqlite 和 Hibernate 開發爬蟲應用JavaSQLite爬蟲
- 關於shiro安全框架和shiro的認證流程框架
- 手寫 Hibernate ORM 框架 00-hibernate 簡介ORM框架
- Hibernate 的關聯關係對映
- Mybatis和其他主流框架的整合使用MyBatis框架
- 關於python整合dlibPython
- 什麼是Jdon My Soul?
- RxJS進階——關於流的理解和應用JS
- 21-Java-Hibernate框架(一)Java框架
- java框架之Hibernate框架知識點整理。Java框架
- SSH三大框架的搭建整合(Spring+Hibernate+Struts2)實現增刪改查登入框架Spring
- 關於 PHP 框架的簡單思考PHP框架
- SAP Spartacus 和 CDC 整合的 HTTP 請求明細HTTP
- SSM框架的整合SSM框架
- hibernate進行JDBC批量新增JDBC
- 關於支付寶以及微信支付的整合
- 關於shiro+springMVC整合使用的問題SpringMVC
- 關於什麼是框架框架
- 關於Play框架的靜態檔案框架
- Plant Maintenance進行整合的SAP關鍵模組AINaN
- 關於 Roguelike 的探討,及基於 Roguelike 的新框架框架
- 基於Gin框架的web後端開發(八): Gin框架的請求重定向框架Web後端
- SpringCloud微服務:基於Nacos元件,整合Dubbo框架SpringGCCloud微服務元件框架
- 關於爬蟲平臺的架構實現和框架的選型(一)爬蟲架構框架
- 關於WPF進度條的使用