Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
支持对象版本的Java序列化库_Java_Serialization_Jackson - Fatal编程技术网

支持对象版本的Java序列化库

支持对象版本的Java序列化库,java,serialization,jackson,Java,Serialization,Jackson,我们正在寻找一种在Java中序列化对象的方法,该方法将尽可能快和小,但也允许我们随着时间的推移更改类,并且仍然能够读取以“旧格式”存储的旧对象 到目前为止,我们能想出的最好的办法就是杰克逊。有什么建议吗?本机序列化支持这一点。请参见除非您的类编写得很好,始终为旧版本中缺少的数据提供默认值(或等效逻辑),否则不应直接使用序列化。您最好使用简单的键值对(例如,序列化映射),这将允许您检测丢失的键并对其采取正确的操作。否则,您应该只通过继承来更改类。目标是序列化为JSON,还是只是为了完成任务?(我提

我们正在寻找一种在Java中序列化对象的方法,该方法将尽可能快和小,但也允许我们随着时间的推移更改类,并且仍然能够读取以“旧格式”存储的旧对象


到目前为止,我们能想出的最好的办法就是杰克逊。有什么建议吗?

本机序列化支持这一点。请参见

除非您的类编写得很好,始终为旧版本中缺少的数据提供默认值(或等效逻辑),否则不应直接使用序列化。您最好使用简单的键值对(例如,序列化映射),这将允许您检测丢失的键并对其采取正确的操作。否则,您应该只通过继承来更改类。目标是序列化为JSON,还是只是为了完成任务?(我提问,因为问题被标记为Jackson,但问题正文没有提到JSON。)