【发布时间】:2013-11-19 22:14:30
【问题描述】:
我目前正在使用默认的 Java 序列化机制序列化我的 Java 实例。我想切换到另一种独立于 Java 版本的格式。我考虑过使用 JAXB,但我认为我遇到了重复问题。特别要考虑以下几点:
A a = new A();
B b = new B();
C c = new C();
a.c = c;
b.c = c;
如果我要使用默认的 Java 序列化机制来序列化 a 和 b,我最终只会得到一个 c 实例。 JAXB 会序列化两次(除非我弄错了,请纠正我)。
这里对我来说最好的选择是什么?有没有其他方法可以将我已经序列化的实例转换为 XML?
【问题讨论】:
-
你是对的,你会得到多个实例。但是,除了一些错误之外,java 序列化 独立于 java 版本,所以我不清楚你为什么要切换。
-
正如@jthalborn 所写,java 序列化在java 版本上相当稳定。如果您的对象发生更改并且您没有设置序列化 id 来控制兼容性,则会出现大多数问题。此外,当然,它绝不是可移植的。
标签: java xml serialization jaxb duplicates