hibernate延迟加载:spring+hibernate避免延迟加载异常

  在hibernate中延迟加载是1个非常大优点但有时候却给我们带来些小麻烦在后台查询结束后session已经关闭但在前台显示时候如果存在关联关系就会产生延迟加载异常

  解决办法是客户端每次请求就分配1个session,将请求结果返回给客户端并完成展现后关闭session

  实现这个功能非常简单在web.xml中加入以下配置

<filter>
   <filter-name>hibernateFilter</filter-name>
       <filter->org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter->
   <init-param>
     <param-name>singleSession</param-name>
     <param-value>true</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>hibernateFilter</filter-name>
   <url-pattern>*.do</url-pattern>
 </filter-mapping>


  使用spring提供这个过滤器就可以实现session集中管理了所有以.do结尾请求都自动分配了1个session,并且在这个请求过程中都使用这个session.

  来自:http://springking.javaeye.com/

Tags:  springhibernate spring延迟加载 hibernate延迟加载

延伸阅读

最新评论

发表评论