我想问一个问题。所以,我有一个像这样的代码块:
MyOwnObject deserializedObject = null;
try{
ByteArrayInputStream bis = new ByteArrayInputStream(serializedObject.getBytes());
ObjectInputStream ois= new ObjectInputStream(bis);
deserializedObject = (MyOwnObject)ois.readObject();
ois.close();
}catch(Exception e){
e.printStackTrace();
}
someMapper.insert(deserializedObject);
PS:serializedObject是我之前从序列化过程中得到的一个字符串,我认为它运行良好。
更新: 代码抛出异常:
local class incompatible: stream classdesc serialVersionUID = 1360826667802527544, local class serialVersionUID = 1360826667806852920
在堆栈跟踪中有一些关于我的对象中某些属性的Integer类型的内容。请原谅我的新手..:|
答案 0 :(得分:1)
在try catch之前定义它:
MyOwnObject deserializedObject = null;
在try / catch中,确保删除声明,并将其更改为:
deserializedObject = (MyOwnObject)ois.readObject();