使用Messagepack进行序列化

4

我喜欢使用Messagepack来序列化我的Java类对象。我的类结构如下:

public class A
 {
   private InnerClass obj;
   //Some other variables with getters and setters.
   // There will be a getter and setter for obj(InnerClass) aswell.
 }
 class InnerClass
 {
  //Some variables with getters and setters.
 }
 class InnerDerivedClass extends InnerClass
 {
  //some variables with getters and setters.
 }

我想做的是创建 InnerDerivedClass 对象并给它赋值,然后将这个对象作为基类对象加入到 Class A 中。当我使用 Messagepack 对 Class A 对象进行序列化和反序列化时,我得到的不是 InnerDerivedClass 对象,而是 InnerClass 对象。我如何使用 MessagePack 实现这一点?我没有使用任何注释,而是在 messagepack 中注册每个类。

2个回答

0

0

对于嵌套结构,我建议使用FlexJson;您可以避免与嵌套结构相关的所有样板代码:

A obj1 = new A()
String json = JSONSerializer().deepSerialize(obj1);

//get back
A obj2 = JSONDeserializer<A>().deserialize(json);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接