发布于 2016-07-16 13:53:34 | 115 次阅读 | 评论: 1 | 来源: 网友投递

这里有新鲜出炉的Java并发编程示例,程序狗速度看过来!

Java程序设计语言

java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE(j2ee), JavaME(j2me), JavaSE(j2se))的总称。


这篇文章主要介绍了java程序中的延时加载异常及解决方案,需要的朋友可以参考下

所谓延时加载就是懒加载(lazy),延迟加载。

什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载。

至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适,因为内存容量有限 ,为了减少并发量,减少系统资源的消耗,

我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。懒加载的异常有很多种,你指的是不是session已经关闭的异常?因为那个初学者最容易遇到情况是当你加载出一个一对多关系的一这端的对象,然后在出了事务之后的地方,比如页面上,还想再获取多端对象里面的除了id以外的属性的时候,就会跑出这个异常。

我举个例子,你有一个 Grade 对象关联了 很多 Student 对象,并且用的是懒加载

你在service里面通过数据库查询获得了一个 Grade对象,这个对象里面有一个Set<Student> students 集合,但是你并没有对这个对象做进一步的处理(比如 intialize之类的操作让懒加载的代理对象真正去实例化)
然后你到了页面的展示的时候,去遍历 students 这个集合,并且你试图在页面上显示每个 student 的 name 属性(这个属性不是studentId) 这个时候就会抛出session已经关闭的异常

在SSH框架中:

可直接可以使用OpenSessionInViewFilter
在配置文件中配置


 <filter-name>opensession</filter-name>   
         <filter-class>       org.springframework.orm.hibernate3.support.OpenSessionInViewFilter   
       </filter-class>   
 <filter-mapping>   
      <filter-name>opensession</filter-name>   
    <url-pattern>*.action</url-pattern> 
 </filter-mapping>

以上就是本文的全部内容了,希望小伙伴们能够喜欢。



相关阅读 :
java程序中的延时加载异常及解决方案
java中tomcat的80端口被占用问题解决
文件路径正确,报java.io.FileNotFoundException异常的原因及解决办法
java在linux系统下开机启动无法使用sudo命令的原因及解决办法
解决Eclipse add external jars运行出现java.lang.NoClassDefFoundError的方法
java.lang.NoClassDefFoundError解决方案
运行java弹出Orcale JInitiator 版本太旧该如何解决?
java.lang.AbstractMethodError: org.apache.xerces.dom.DocumentImpl.setXmlVersion问题解决方法
Java中出现错误:“编码utf-8的不可映射字符”的解决方法
Java中tomcat memecached session 共享同步问题的解决办法
Java基于Runtime调用外部程序出现阻塞的解决方法
java socket长连接中解决read阻塞的3个办法
最新网友评论  共有(1)条评论 发布评论 返回顶部
kvmaiu 发布于2016-08-16 00:29:55
板凳
支持(0)  反对(0)  回复
月排行榜

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  服务