java——解决java.io.StreamCorruptedException: invalid stream header: xxx

Posted gaoquanquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java——解决java.io.StreamCorruptedException: invalid stream header: xxx相关的知识,希望对你有一定的参考价值。

这个错误是由序列化引起的,可能的原因以及解决方法:

1.kryo对于集合(比如 Map)的反序列化会失效,报这个错误,解决办法比较暴力,不用kryo了,直接用java原生方法。

2.使用Java原生方法要注意,序列化和反序列化的方式,不能直接使用str.getBytes()获取二进制流,应该使用序列化方式获取二进制流:

https://blog.csdn.net/weixin_33881050/article/details/87100661

3.对于Map仍然序列化失败,这时候可以将Map对象转换成json字符串来存储,反序列化也是需要将字符串再转成map : JSONObject.toJSONString(jsonResult)

4.如果还不行,那就将map转成json对象,再把json对象转成json字符串存储,反序列化同上~

 

以上是关于java——解决java.io.StreamCorruptedException: invalid stream header: xxx的主要内容,如果未能解决你的问题,请参考以下文章

如何解决java.lang.NoClassDefFoundError问题

如何解决java.lang.NoClassDefFoundError

java数据库中文乱码怎么解决

如何解决java.lang.NoClassDefFoundError错误

java高并发,如何解决,啥方式解决,高并发

怎么解决java.lang.NoClassDefFoundError错误