我需要串行一个对象并将其存储在磁盘上。我使用了Java内置的,只要该类没有变化太多,它就可以正常工作。如果我开始在课堂上乱逛,它就会停止工作。
这里有哪些选项?基本上如果我们有更新,我不想破坏所有用户的数据文件。
到目前为止,我已尝试将序列化为XML(具有相同的问题)。还尝试“手动”配置/数据文件。基本上将所有内容都吐出为XML,加载它然后根据配置文件创建一个新对象。这似乎运作良好,但由于需要进行大量的手工操作,因此需要将所有内容转换为此内容。
还有其他选择吗?
答案 0 :(得分:1)
答案 1 :(得分:1)
答案 2 :(得分:0)
我是一个坚定的信徒(已经学会了很难的方法)为我的序列化对象拥有持久代理。有效的Java有一整章介绍了实现它们的方法。
我这样做的方法是使用一个内部类,它将我的对象放在它的构造函数中,并相应地设置它的内部字段。随着您的真实对象的发展,您可以向代理添加新字段,也可以创建一个全新的代理(保留旧代理以实现向后兼容)。
有关详细信息,请参阅this article。