Java 从类中删除字段并更新现有序列化文件
我已经有一个包含类X实例的序列化文件。 我现在决定通过删除一个不再需要的字段来修改X类的代码。相应地更新现有序列化文件的最佳方法是什么 到目前为止,我想到的唯一解决办法是:Java 从类中删除字段并更新现有序列化文件,java,serialization,deserialization,Java,Serialization,Deserialization,我已经有一个包含类X实例的序列化文件。 我现在决定通过删除一个不再需要的字段来修改X类的代码。相应地更新现有序列化文件的最佳方法是什么 到目前为止,我想到的唯一解决办法是: 创建与X相同但没有不需要的字段的临时类Y 从文件中反序列化X实例,构造其等效的Y实例,并将其序列化为新文件 从类X的代码中删除不需要的字段,然后反向执行步骤2 这是一个可怕的混乱(尤其是因为这种情况对我来说很常见)。还有更好的办法吗 谢谢 您不需要对文件执行任何操作。已删除的字段数据将被反序列化到已修改的类而忽略。只需确保不
谢谢 您不需要对文件执行任何操作。已删除的字段数据将被反序列化到已修改的类而忽略。只需确保不会干扰
serialVersionUID
的值,如果尚未提供值,请在进行更改之前,使用serialver
工具的输出立即进行更改
您需要仔细查看该文件。您不需要对该文件执行任何操作。已删除的字段数据将被反序列化到已修改的类而忽略。只需确保不会干扰
serialVersionUID
的值,如果尚未提供值,请在进行更改之前,使用serialver
工具的输出立即进行更改
你需要好好看一看。这方面的措辞很糟糕。当字段删除不兼容时,它会将其列为不兼容。对于应用程序来说,这可能是不兼容的,但是通过序列化可以很好地处理。在这方面,它的措辞很糟糕。当字段删除不兼容时,它会将其列为不兼容。对于应用程序来说,这可能是不兼容的,但是可以通过序列化来处理。