struts2 Json超长丢数据( struts2-json-plugin)

先描述下今天遇到的问题,查询一个list 以json形式传到页面表格展示,数据多的时候整个页面会取不到数据;

博主断点了两遍发现后台代码和SQL毫无问题,最后在页面审查中发现界面没有数据;这就奇怪了;数据少的时候有,多了就没了;

在response里看了下 发现返回的数据最后少了一个"}";

就是少了一个" } ";应该是json传过来丢了数据了;

项目用的是struts2  json数据处理用的是struts2-json-plugin-2.3.7.jar插件

在原有Struts2框架jar包的引入下,额外多加一个Json的插件包(struts2-json-plugin-2.3.7.jar

在struts.xml中配置

<package name="xxx" extends="json-default">

  
  
<result name="success" type="json"></result>

在Java代码中设置传递参数时候会有两个选择一种在发送 json 数据时设置一个 content-length 的参数,即要发送的数据的字节数

;若指定 content-length 即使接收到的字节数大于该值  则浏览器会只读取指定的字节数;

另一种是不指定发送字节数,需要指定参数 enableGZIP=true 则会走第一个分支不再设置 content-length 参数,

在浏览器接收参数中可以发现有参数 Transfer-Encoding=chunked;而 http 中如果存在参数 Transfer-Encoding=chunked 则即使存在参数 content-length 参数失效;

下图为限定json长度:


下图为不限定长度:





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值