2016-08-21 106 views
2

我想知道这是否可能。 我有一个巨大的json文件来解析和修改。 但并非所有的字段都对我有意思:我不想只映射我感兴趣的字段,修改它们,然后保存所有我不在乎的字段的json。杰克逊处理剩余字段

那么假设我有很多的属性,只有一个我在一个名为“MyProp” interrested,我想是这样

public class MyMapper extends HashMap { 
    private String myProp; 
    public void setMyProp(String myProp) { 
     this.myProp = myProp; 
    } 
    public String getMyProp() { 
     return myProp; 
    } 
} 

但财产“MyProp”始终为空(直到我删除“延长HashMap的“)。 取而代之的都是在地图上。

如果能够将混凝土领域与地图混合在一起,而不会失去未知知识,那么将不会有用(或者已经可以?)吗?

而且这将是更好地没有延伸HashMap的,而是有一个字段来保存所有的未知领域是这样的:

public class MyMapper { 
    private String myProp; 
    private Map remaining = new HashMap(); 
    public void setMyProp(String myProp) { 
     this.myProp = myProp; 
    } 
    public String getMyProp() { 
     return myProp; 
    } 
    @JsonRemaining 
    public Map getRemaining() { 
     return remaining; 
    } 
} 

你怎么会在这种情况下怎么办?

回答