SSH页面懒加载异常处理方法

来源:互联网 发布:软件操作手册 编辑:程序博客网 时间:2024/06/06 01:16

       使用SSH开发项目时如果从头至尾中规中矩的使用SSH提供的方法,由于模型对象之间的关联关系,解决懒加载问题肯定是必要的。这里提供如下几个方法:

      1.不使用懒加载机制,这样的方法显然可以解决,但是Hibernate既然提供了懒加载机制来提高整体性能,却不去用它,如果对象的关联关系十分复杂,每次都不使用懒加载必然会大大加重服务器的负担。

      2.一劳永逸解决懒加载问题,使用Spring的OpenSessionInViewFilter,在视图页面打开Session,这样只要在渲染页面时就打开Session,那么就不会出现懒加载异常的问题,需要关联的对象就直接发送sql语句,不需要使用则不会,并且这个过滤器要在Struts2前使用,不能放在Struts2后面,但是这用方法显然有一个缺点,在渲染页面时一直开启Session会造成资源的占有浪费,因为Session是数据库连接资源,十分珍贵对于服务器性能来说。服务器并发量一旦很大,服务器就瘫痪了。

     3.强行在service层强行初始化代理对象。这是最有效的方法。

      


0 0