对这种懒加载问题,最后的做法是利用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
相关文章:
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
如何快速查询网站的真实建站时间?
如何设计高效校园网站?
常州企业网站制作公司,全国继续教育网怎么登录?
香港服务器建站指南:免备案优势与SEO优化技巧全解析
学校建站服务器如何选型才能满足性能需求?
如何快速查询域名建站关键信息?
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
如何快速搭建高效WAP手机网站吸引移动用户?
C#怎么使用委托和事件 C# delegate与event编程方法
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
盘锦网站制作公司,盘锦大洼有多少5G网站?
官网自助建站系统:SEO优化+多语言支持,快速搭建专业网站
香港服务器选型指南:免备案配置与高效建站方案解析
网站制作软件免费下载安装,有哪些免费下载的软件网站?
如何挑选高效建站主机与优质域名?
Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解
建站之星在线客服如何快速接入解答?
平台云上自主建站:模板化设计与智能工具打造高效网站
广东专业制作网站有哪些,广东省能源集团有限公司官网?
如何在自有机房高效搭建专业网站?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
建站主机选购指南与交易推荐:核心配置解析
西安专业网站制作公司有哪些,陕西省建行官方网站?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
如何配置支付宝与微信支付功能?
如何优化Golang Web性能_Golang HTTP服务器性能提升方法
如何用PHP快速搭建高效网站?分步指南
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
公司网站设计制作厂家,怎么创建自己的一个网站?
建站之星如何配置系统实现高效建站?
网站制作网站,深圳做网站哪家比较好?
制作营销网站公司,淘特是干什么用的?
建站之星免费模板:自助建站系统与智能响应式一键生成
建站之星与建站宝盒如何选择最佳方案?
如何在橙子建站上传落地页?操作指南详解
宝塔面板如何快速创建新站点?
图册素材网站设计制作软件,图册的导出方式有几种?
详解jQuery停止动画——stop()方法的使用
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
简单实现Android文件上传
建站主机功能解析:服务器选择与快速搭建指南
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
如何在Golang中使用replace替换模块_指定本地或远程路径
完全自定义免费建站平台:主题模板在线生成一站式服务
如何用5美元大硬盘VPS安全高效搭建个人网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。