一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 如何解決hibernate一對多注解懶加載失效問題

如何解決hibernate一對多注解懶加載失效問題

2022-02-21 00:37山間明月江上清風_ Java教程

這篇文章主要介紹了解決hibernate一對多注解懶加載失效的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

hibernate一對多注解懶加載失效

如何解決hibernate一對多注解懶加載失效問題

在House類里有關聯HouseInfo,設置了懶加載

但是頁面ajax返回還是有HouseInfos的數據。

經排查,問題出在controller這邊

如何解決hibernate一對多注解懶加載失效問題

@response注解啟用jackson框架對House進行解析

然后調用了每個屬性的get方法,自然houseInfos的懶加載就失效了

解決方法

給houseInfos字段加上@JsonIgnore注解忽略json解析

 

Hibernate懶加載異常說明及其解決

在集成ssh2三大框架的時候很容易就會造成懶加載異常,通常顯示的錯誤信息是:

org.hibernate.LazyInitializationException: could not initialize proxy - no Session

懶加載異常出現的原因

如何解決hibernate一對多注解懶加載失效問題

我們在Action中調用Service中的方法,方法中開始時open session,當調用結束后close session,例如類User中有一個Department屬性,我們使用Hibernate查詢一個User時,hibernate默認是懶加載的,此時查詢出的User不會把Department中所有的信息查詢出來。

當session 關閉后我們在Result中(例如在jsp中打印department.name)使用到了Department的name屬性時就會出現懶加載異常。

解決方案1

不用懶加載(不推薦)

解決方案2

如何解決hibernate一對多注解懶加載失效問題

我們不在方法結束的時候關閉session,在執行完Action Result之后,通過過濾器關閉session,具體如下:

使用OpenSessionInViewFilter解決解決懶加載問題,在web.xml中配置:

<!-- openSessionInViewFilter,改過濾器在view渲染時始終開啟session,一勞永逸解決hibernate的懶加載問題,
    該過濾器必須配置在struts2過濾器之前,一般推薦使用(由于性能問題,在view渲染時始終開啟session)-->
  <filter>
    <filter-name>openSessionInViewFilter</filter-name>
    <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>openSessionInViewFilter</filter-name>
     <url-pattern>/*</url-pattern>
   </filter-mapping>

解決方案3

例如涉及三個類 分別為Survey、Page、Question類,三個類的關聯關系

class Survey{
  private Long id;
  private List<Page> pageList=new ArrayList<Page>();
}
class Page{
  private Long id;
  private List<Question> questionList=new ArrayList<Question>();
}
class Question{
  private Long id;
}

方法是強行在service層面是初始化代理對象.

public Survey getSurveyWithChildren(Long sid){
   Survey s = surveyDao.getEntity(sid);
  //強行初始化pages和questions集合
   for(Page p : s.getPages()){
     p.getQuestions().size();
  }
   return s;
}

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/u011870280/article/details/51140805

延伸 · 閱讀

精彩推薦
  • Java教程Java圖形界面GUI布局方式(小結)

    Java圖形界面GUI布局方式(小結)

    這篇文章主要介紹了Java圖形界面GUI布局方式(小結),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下...

    SmallSweets7392021-09-13
  • Java教程Default Methods實例解析

    Default Methods實例解析

    這篇文章主要介紹了Default Methods實例解析,介紹了默認方法的相關問題,以及與普通方法的區別,具有一定參考價值,需要的朋友可以了解下。...

    星星的專欄5492021-01-05
  • Java教程Java面試題沖刺第四天--數據庫

    Java面試題沖刺第四天--數據庫

    這篇文章主要為大家分享了最有價值的三道數據庫面試題,涵蓋內容全面,包括數據結構和算法相關的題目、經典面試編程題等,感興趣的小伙伴們可以參...

    _陳哈哈8662021-10-07
  • Java教程springBoot2.X配置全局捕獲異常的操作

    springBoot2.X配置全局捕獲異常的操作

    這篇文章主要介紹了springBoot2.X配置全局捕獲異常的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教...

    劉翊揚11042021-10-26
  • Java教程java接收ios文件上傳的示例代碼

    java接收ios文件上傳的示例代碼

    這篇文章主要為大家詳細介紹了java接收ios文件上傳的示例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    小小Blog8792021-05-04
  • Java教程Spring純注解配置實現代碼示例解析

    Spring純注解配置實現代碼示例解析

    這篇文章主要介紹了Spring純注解配置實現代碼示例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可...

    錵開や落幕4082020-08-13
  • Java教程阻塞隊列—PriorityBlockingQueue源碼分析

    阻塞隊列—PriorityBlockingQueue源碼分析

    PriorityBlockingQueue 優先級隊列,線程安全(添加、讀取都進行了加鎖)、無界、讀阻塞的隊列,底層采用的堆結構實現(二叉樹),默認是小根堆,最小的或...

    今日頭條1932020-11-25
  • Java教程java常見的字符串操作和日期操作匯總

    java常見的字符串操作和日期操作匯總

    本文主要對java 常見的字符串操作和日期操作進行整理。具有一定的參考價值,需要的朋友一起來看下吧...

    濫好人1872020-07-19
主站蜘蛛池模板: 免费精品国产在线观看 | 天堂樱桃bt在线www | 日产乱码卡一卡2卡三卡四福利 | 秋霞啪啪片| 亚洲精品视频导航 | 日韩大片在线播放 | 久久久无码精品无码国产人妻丝瓜 | 日本生活中的玛丽 | 亚洲人和日本人hd | 国产精品99久久免费观看 | 门房秦大爷小说 | a毛片在线免费观看 | 香蕉国产精品偷在线播放 | 天堂俺去俺来也www久久婷婷 | 艾秋麻豆果冻传媒老狼仙踪林 | 美女牲交毛片一级视频 | 爱情岛论坛亚洲品质自拍视频 | 国产亚洲精品激情一区二区三区 | 人禽l交视频在线播放 视频 | 大伊香蕉在线精品不卡视频 | 亚洲激情欧美 | 免费高清www动漫视频播放器 | 黑人日白人 | 亚洲免费视频播放 | 成年性生交大片免费看 | 亚州人成网在线播放 | 99在线视频精品费观看视 | 精品一区二区三区免费观看 | 色综合色狠狠天天综合色 | 精品国产爱久久 | 华人在线京东热 | 1986葫芦兄弟全集免费观看第十集 | 欧美日韩色图 | 精品综合久久久久久88小说 | 91精品国产美女福到在线不卡 | 日产精品一卡2卡三卡4乱码久久 | 国产精品久久久久久久免费大片 | 亚洲精品人成网在线播放影院 | 亚欧洲乱码视频一二三区 | 波多野结衣52部合集在线观看 | 日韩高清成人毛片不卡 |