最近项目中运用了s2sh架构开发项目,部分页面运用了jquery的ajax方式查询数据,返回格式为json,结果经常出现堆溢出的问题!
报的错误是:
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:2882)
at java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:100)
at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:572)
at java.lang.StringBuilder.append(StringBuilder.java:203)
at com.googlecode.jsonplugin.JSONWriter.add(JSONWriter.java:500)
at com.googlecode.jsonplugin.JSONWriter.string(JSONWriter.java:458)
at com.googlecode.jsonplugin.JSONWriter.process(JSONWriter.java:141)
郁闷了好几天,后来发现是action类里面由于注入了service接口的get方法导致。
public UserSerivce getUserService(){
return this.userService;
}
最后将其去除,程序正常。
原来当你的项目使用json格式返回的时候你的action类里面所有的的属性具有get方法都会被自动以json格式返回给页面。所以我们以后的项目应该在使用ajax的时候最好单独的写一个Ajax的类。单独写一个针对ajax的struts配置文件。例如:struts-ajax.xml文件内容
<struts>
<package name="ajax" namespace="/ajax" extends="json-default">
<action name="query" class="AjaxAction" method="query">
<result type="json"/>
</action>
</package>
</struts>
页面写法如下:
$.ajax({
url:"ajax/query.action",
type:"GET",
datatype:"json",
data:'userId='+document.getElementById("uid").value,
success:function(value){
var json = eval( "("+value+")" );
var num = eval(json.map.num);
if(num!="0")
{
jQuery('#pNum').text(num);
}
},
error:function(json){
//alert("error");
}
});
分享到:
相关推荐
Struts2.1.6+Hibernate3.3.1+Spring2.5.6整合无冲突jar包
struts2+spring+hibernate+jquery+json 以前没有做过此类的东西终于有时间来试试 可以方便学习
json+jquery+struts2+hibernate+spring 实现的小型bbs系统,这个提供包 ,很不错的下载后,好好徐希一下吧
spring+struts2+hibernate+json+dtree+mysql实现的无限级联树含JAE包
spring+struts2+hibernate+json+dtree+mysql实现的无限级联树 不含JAR包
struts1+spring+hibernate整合所用全部jar包
json+struts2+hibernate+spring jar 插件 web 开发 必备
JEECMS使用目前java主流技术架构:hibernate3+struts2+spring2+freemarker。AJAX使用jquery和json实现。视图层并没有使用传统的JSP技术,而是使用更为专业、灵活、高效freemarker。 数据库使用MYSQL,并可支持orcale...
1)Demo 学习要点简介: ...2.Eclipse 导入后可能需要在 Xml Catalog 手动添加:ehcache-spring-1.2.xsd(ehcache-spring-annotations-1.2.0-sources.jar里面有,自己找下)。 3.内附Oracle建表等可执行语句。
SSH整合示例(详情见我博客专栏)之前的博客我们总结了spring基础、spring分别整合struts2、hibernate、mybatis等,今天我们来同时整合下 struts、spring、hibernate,也就是所谓的 ssh 。 整合流程: 1 首先整合...
此压缩包含有两个工程,一个工程是struts2+spring2.5+hibernate3.3整合的服务器端技术(全注解)(云端),另一个工程是android的手机应用,包含对ssh整合的云端数据的访问,能够在android输入信息,将数据传递给...
Struts2.18+Spring2.56+Hibernate3+Extjs实现登陆、修改密码、找回密码等功能,其中涵盖了邮件发送、java中使用正则表达式、json的使用等功能
spring3+hibernate4+struts2+dbcp+mysql+json+ehcache+dom4j 合集包
上网找资料,都是一些不全的. struts2+extjs2.1+json+hibernate+spring 自己整合的例子. 当中hibernate数据源可以配置自己的.后台输送json 前台接收.
JQuery1.4.2+Struts2.1.8+JSON0.34+Spring2.5.6+Hibernate3.5+XFire1.2.6整合实例(已上传) 1、JSON0.34使用的是struts2附带的struts2-json-plugin-2.1.8.1.jar 2、db是mysql,名字为test,用户名root,密码空 3、...
网站框架搭建,涉及struts2+jquery+json、dwr、log日志、过滤器、拦截器。
用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...
Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2+json+junit4所有的jar包,总共32个!
已经完全打包制作的SSH框架...由于文件大小限制,jar包中删除了hibernate的核心jar,需要大家自己下个添加,其余jar包已经完整!测试例子已经删除。需要手动编写。出错的话自己检查代码。这个包我一直在用,没见过报错
包含整合后的sshjar包 外还有 json 连接池 poi等工具jar包