1.2.29 fastjsonview 的时候 写 byte[] 时,对长度做了优化?

busg9geu  于 2021-11-27  发布在  Java
关注(0)|答案(2)|浏览(270)

现在需要按照偏移量来输出?
原来是按照整数组输出?

是否有源码 对比下?

dffbzjpn

dffbzjpn1#

byte[]输出为base64字符串,这个在fastjson/jackson中的行为都是一致的,你遇到什么问题了?

ss2ws0br

ss2ws0br2#

@wenshao 下面是重写 ServletOutputStream 的write方法
原来:
@OverRide
public void write(byte buf[], int off, int len)
{
oldStr = new String(buf, CommonUtils.CODE_UTF8);
现在:
@OverRide
public void write(byte buf[], int off, int len)
{
oldStr = new String(buf, off, len, CommonUtils.CODE_UTF8);
升级到了1.2.29后 需要在转为字符串的时候 需要将按照数组的具体的off,len来取数据 不然在后面就有一串000000 导致返回的结果不一致了。
以前的版本是直接拿整个byte长度输出的
这是是不是fastjson view 在返回的时候 这个byte[] 的处理有变化了

相关问题