首页 > 代码库 > 关于s2sh框架关于hibernate懒加载问题的说明和解决方案
关于s2sh框架关于hibernate懒加载问题的说明和解决方案
首先我们来看下面这个图,解释了一个web程序的一次请求流程!
懒加载异常的说明:
懒加载就是我们在查询一个对象时,它所有的属性是否要被查出来!
如果懒加载开启的话,session在service层就被关闭了,而我们的view如果不需要他的属性的话,那就不会出现懒加载异常,如果需要属性,这时候session已经关闭了所以就会出现懒加载异常,这个时候我们就考虑能否把session放到请求完成之后再进行关闭。
解决:
答案当然是可以,那就是使用过滤器,在请求结束之后将session关闭,在web.xml里面配置上以下配置即可:(注意放到struts过滤器之前)
1 <!-- 配置spring关于hibernate懒加载的问题 -->2 <filter>3 <filter-name>OpenSessionInViewFilter</filter-name>4 <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>5 </filter>6 <filter-mapping>7 <filter-name>OpenSessionInViewFilter</filter-name>8 <url-pattern>*.action</url-pattern>9 </filter-mapping>
关于s2sh框架关于hibernate懒加载问题的说明和解决方案
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。