全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法

对这种懒加载问题,最后的做法是利用Spring提供的一个针对Hibernate的一个支持类,其主要意思是在发起一个页面请求时打开Hibernate的Session,一直保持这个Session,使得Hibernate的Session的生命周期变长,直到这个请求结束,具体是通过一个Filter来实现的。 那么,如果现在我们想用Hibernate懒加载特性,又想用延长session的生命周期,知道将数据提到页面显示(经过action层),那么我们就得在web.xml文件中增加以下配置:

<!-- 配置Spring的用于解决懒加载问题的过滤器 --> 
 <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>*.action</url-pattern> 
 </filter-mapping> 

  注:1)OpenSessionInViewFilter为过滤器名字,*.action表示拦截所有的action,也可以 /*

    2)非 web 页面请求(如定时任务)可以按下面的方式进行处理(Hibernate.initialize(Object proxy) 方法强制加载这样就相当于动态改变为lazy=fals)

/**
 * @Author masl - 2017/9/28 14:22
 * @param setRepaymentId
 * @param initSubs :是否初始化关联表数据
 * @return
 */
@Override
public SetRepayment findSetRepaymentById(Integer setRepaymentId, boolean initSubs) {
  SetRepayment setRepayment = null;
  if (setRepaymentId != null) {
    setRepayment = setRepaymentDao.get(setRepaymentId);
    if (setRepayment != null && initSubs) {
      Hibernate.initialize(setRepayment.getSetIncomes());
    }
    return setRepayment;
  }
  return null;
}

总结

以上所述是小编给大家介绍的hibernate 中 fetch=FetchType.LAZY 懒加载失败处理方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# hibernate  # 懒加载  # 解决spring boot hibernate 懒加载的问题  # Hibernate懒加载之<class>标签上的lazy  # 浅谈解决Hibernate懒加载的4种方式  # 浅谈hibernate中懒加载禁用操作  # 加载  # 想用  # 小编  # 是在  # 在此  # 给大家  # 就得  # 按下  # 来实现  # 其主要  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # 变长  # org  # OpenSessionInViewFilter  # filter  # java 


相关文章: *服务器网站为何频现安全漏洞?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  网站企业制作流程,用什么语言做企业网站比较好?  公司网站的制作公司,企业网站制作基本流程有哪些?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  Python如何创建带属性的XML节点  建站之星在线客服如何快速接入解答?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  网站制作软件有哪些,制图软件有哪些?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  导航网站建站方案与优化指南:一站式高效搭建技巧解析  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何在Windows环境下新建FTP站点并设置权限?  金*站制作公司有哪些,金华教育集团官网?  佛山网站制作系统,佛山企业变更地址网上办理步骤?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  建站之星logo尺寸如何设置最合适?  ,交易猫的商品怎么发布到网站上去?  如何用景安虚拟主机手机版绑定域名建站?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  建站之星代理平台如何选择最佳方案?  企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  如何快速查询网站的真实建站时间?  南平网站制作公司,2025年南平市事业单位报名时间?  如何在IIS中新建站点并配置端口与物理路径?  如何通过免费商城建站系统源码自定义网站主题与功能?  如何快速搭建高效简练网站?  如何快速辨别茅台真假?关键步骤解析  如何在IIS服务器上快速部署高效网站?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  建站之星微信建站一键生成小程序+多端营销系统  建站之星如何快速更换网站模板?  如何有效防御Web建站篡改攻击?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  如何通过山东自助建站平台快速注册域名?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何在Golang中使用replace替换模块_指定本地或远程路径  攀枝花网站建设,攀枝花营业执照网上怎么年审?  建站主机如何选?性能与价格怎样平衡?  智能起名网站制作软件有哪些,制作logo的软件?  建站之星安装路径如何正确选择及配置?  如何选择高效稳定的ISP建站解决方案?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  如何在阿里云高效完成企业建站全流程?  C++如何编写函数模板?(泛型编程入门) 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。