我在数据库中保存了一个java对象,然后几天后我更改了我的jre版本。 现在,当我试图读取同一个对象时,我得到了以下异常:
Exception in thread "main" java.io.InvalidClassException:
SerializeMe; local class incompatible: stream classdesc
serialVersionUID = -6377573678240024862, local class serialVersionUID = -8204757486033751616
如何摆脱这种情况,如何获取保存的对象?
请帮帮我。
答案 0 :(得分:8)
如果您可以影响此类的源代码并且JRE只是发生了变化,那么很可能您仍然可以反序列化由旧JVM序列化的对象。只需在类中定义要反序列化的以下字段:
private static final long serialVersionUID = -6377573678240024862L;