2011-10-14 203 views
3

反序列化自参考对象我有一个JSON字符串看起来就像是(简体):与杰克逊

[ 
    { "id":1, "friends":[2] }, 
    { "id":2, "friends":[1,3] }, 
    { "id":3, "friends":[] } 
] 

在朋友的内容在列表中的其他用户的标识。

是否有可能以某种方式来创建类似下面从JSON只是使用数据绑定杰克逊一个Java类还是我需要为一个中间步骤?

public class User { 
    private long userid; 
    private List<User> friends; 
// ... getters/setters 

感谢您的帮助。

回答

0

没有做到这一点完全注释的方式,所以你需要定制JsonSerializer/JsonDeserializer。杰克逊1.9增加了two new features可能会有所帮助:

  • ValueInstantiators,这样你就可以添加构造函数解串器从基本整数转换成POJO
  • 价值注入,所以你可以通过额外的上下文对象(你需要找到IDS已经解串器物体,然后映射整数到实例)

但我不是100%确定如何将这两个特性结合起来用于特定用途的情况下...

+0

谢谢,我会考虑这一点。 – baumratte