【发布时间】:2013-04-29 10:23:57
【问题描述】:
我正在考虑使用 flexjson 将我的业务对象序列化为 android 应用程序中的文件,只需使用 JSONSerializer().deepSerialise(myObject) 和 JSONDeserializer().deserialise(jsonString) 以及所有默认转换器和对象工厂。
我希望,一旦应用程序发布,对业务模型的任何更改都应该通过在新版本中编写 flexjsons 转换器和对象工厂来适应,以保持与以前版本的兼容性。
我不确定默认转换器和对象工厂可以应对哪些变化。 即,如果我将一个字段添加到一个类并从没有该字段的旧版本反序列化到新类中,它将失败,或者新字段将为 null 或 0(如果是数字)。同样的问题,如果我删除一个字段,会发生什么。
在标准的 java 序列化中,这一切都记录在这里.. http://docs.oracle.com/javase/7/docs/platform/serialization/spec/version.html
但我找不到 flexjson 的等效信息,它明确处理围绕对象版本控制的问题,有吗?
干杯, 菲尔。
【问题讨论】:
标签: serialization deserialization flexjson