gpt4 book ai didi

java - 如何更新持久化 Java 对象的结构?

转载 作者:行者123 更新时间:2023-11-29 06:00:21 24 4
gpt4 key购买 nike

我遇到了 Java 序列化问题。假设我有一个对象持久保存到文件系统。在后一版本中,我们如何根据对象结构的修改来更新文件的结构?

例如,如果我保存对象

A{int a; String b} to file

然后我将结构更改为 A{int a; String b, char c} 有什么方法可以根据 A 的最新版本更改以前保存的文件吗?

最佳答案

这是可能的。您需要使下一个版本向后兼容以前的版本。 Java 序列化规范中解释了这样做的方法:http://docs.oracle.com/javase/1.3/docs/guide/serialization/spec/version.doc.html .

但是,这个问题很好地说明了为什么使用 native Java 序列化来长时间保存对象通常不是一个好主意。如果您使用了一种特定的格式(XML、JSON 或其他),您可以轻松地读取和转换文件本身,或者能够读取具有不同序列化程序实现的文件的任何版本,从而更容易地从一个版本迁移给另一个。

关于java - 如何更新持久化 Java 对象的结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10382239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com