尝试对struts2返回的JSON数据进行压缩

今天有兴致用HttpWatch查看基线的所有页面的post和request,在报告里提示有这样的warning:

HW1001 Performance The textual content in the HTTP response could be made smaller using HTTP compression


我们使用SSH框架,查询数据的时候,前台Ajax请求到struts,action返回JSON数据给前台。

当该返回的JSON字符串比较大时,据我的经验判断,会产生两个问题。

一是Ajax方式接收大字符串数据,是不可靠的。

这时,可能会有丢失数据或Ajax无法正确处理数据的问题。当数据库的数据量很大时,且查询超时(大概2~5分钟左右),action返回大字符串给Ajax后,Ajax并不能正确响应,对传递过来的数据采取了盲状态或置之不理,如果此时的grid设置了loadmask,那么它会一直处于loading状态。即数据到来了,只是迟到了N秒。。。,Ajax就不认识他了!(与Ajax这位小姑娘date,还是要准时赴约的。)

二是HTTP response大字符串数据,是不安全的。


大概搜了一下,了解了struts已经提供了这种解决方法,就是给返回的JSON数据GZIP一次,当然也可能会有乱码问题。

如何GZIP呢,待续。。。




你可能感兴趣的:(SSH,struts,json,ajax,compression,action,数据库)