Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决

               之前在做批量修改多条数据的状态时 接收前台传过来的数组大小超过了256 报了一个数组下表越界的问题 在代码开发的时候没考虑到这点 自己测试的时候也只是修改要百多条的数据的状态   之后被测试测出来了这个问题   我们系统上10条数据分一页 那测试就是同时勾选了超过25页的数据修改它们的状态 可以看出这测试 测的挺到位的!

           

           解决:在你的controller 加上这段代码 就可以修改默认的数组和集合增长的限制了

Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决

可以看到 WebDataBinder 类继承了DataBinder  而DataBinder里面 又设置的数组和集合增长的默认限制:256  所以当你超过了 就会报错了

Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决


Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决

       

      

Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决

Sping 接收前台传过来的数组大小超过256 报 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 的错误解决

    


所以在controller   里的  binder.setAutoGrowCollectionLimit(XXX);  就调用了 这个方法