2014-07-17 35 views
0

因此,我可以执行以下操作new GensonBuilder().useClassMetadata(true),并且Genson会在序列化时为类Json对象添加@Class元素。仅在Genson中为非具体类型添加类元数据

有没有什么办法可以让这种情况发生,只有当它涉及到一个不同于编译时间的运行时类型。

E.g.

class MyType { 

    public MyType myType; 
    public Objct myType2; 
} 

我希望在连载时myType2,但不是一个myType元素@Class

回答

0

不,目前没有这样的选择。 您可以通过修改ClassMetadataConverter轻松实现您的用例。如果你这样做,那么用你的改变做一个PR可能会很棒。

更新在最新发布Genson 1.1,你现在在构建器的选项来启用此行为:

new GensonBuilder().useClassMetadataWithStaticType(false).create(); 
+0

我有一个快速查看这一点,但它看起来并不像我想有什么需要实现这一点。感谢你的回答。 – Cheetah

+0

好吧,我已经为您的用例创建了一个问题https://github.com/owlike/genson/issues/17,看看描述是否有助于您实现它。不要犹豫,在那里寻求帮助来实施它。 – eugen

+0

啊,没有看到'tClass'可用......很快就会有一个黑客 - 谢谢。 – Cheetah

相关问题