Java 反序列化期间重复的字段

Java 反序列化期间重复的字段,java,json,jackson,Java,Json,Jackson,我有一个类似这样的类: public class Item { private ItemHeader header; private ItemBody body; } public class ItemHeader { private int id; private String name; } public class ItemBody { private List<String> values; private List<String> details; i

我有一个类似这样的类:

public class Item {
private ItemHeader header;
private ItemBody body; 
}

public class ItemHeader {
private int id;
private String name;  
}
public class ItemBody {
private List<String> values;
private List<String> details;
itemHeader和itemBody的内部会两次溢出到反序列化的Json中,一次(正确地)溢出到相应的字段中,第二次溢出到字段外部

在幕后,我对Jackson的定义没有太多的控制,基本上只能通过注释等来控制我的类层次结构


请提供建议-如何删除重复项、“溢出”值

我最终删除了解决这个问题的双层getter/setter,在这个过程中,我发现序列化路径和de-path确实使用了不同的库。因此,如果有正确的想法,

我最终删除了解决问题的双层getter/setter,并在这个过程中发现,序列化路径和de-path确实使用了不同的库。所以我有正确的想法

我不明白你的问题是什么?如何消除重复。将添加澄清,感谢Sonignore注释就足够了。也许类路径中有几个json库,比如codehaus和fasterxml,而这些行为是由它们的冲突引起的?@AdamSkywalker可能是。不过,我只导入了fasterxml库,那么另一个库在这种情况下会有什么影响呢?我添加了@JsonIgnore,当序列化路径上发生同样的问题时,它确实解决了问题。所以这对梅来说更令人费解。我不明白你的问题是什么?如何消除重复。将添加澄清,感谢Sonignore注释就足够了。也许类路径中有几个json库,比如codehaus和fasterxml,而这些行为是由它们的冲突引起的?@AdamSkywalker可能是。不过,我只导入了fasterxml库,那么另一个库在这种情况下会有什么影响呢?我添加了@JsonIgnore,当序列化路径上发生同样的问题时,它确实解决了问题。所以这对我来说更令人困惑
    {
  "body": {
    "details":[]
    "values":[]
  },
  "header": {
    "id": 145,
    "name": "name_of_item",
   },
    "details":[],
    "values":[],
    "id": 145,
    "name": "name_of_item"    
}