Json在Java中反序列化

时间:2015-08-14 07:04:55

标签: java json annotations jackson fasterxml

我有以下结构:

public class MainDTO {
  private AbstractInferDTO;

  getter and setter;
}

@JsonInfoType(use=Id.Name, include=As.Property, property="type")
@JsonSubTypes({
  Type(value=Infer1DTO.class, name="infer1"),
  Type(value=Infer2DTO.class, name="infer2")
}) 
abstract public class AbstractInferDTO {}

@JsonTypeName("infer1")
public class Infer1DTO extends AbstractInferDTO {
   private String infer1Name;
   getters and setters
}

@JsonTypeName("infer2")
public class Infer2DTO extends AbstractInferDTO {
   private String infer2Name;
   getters and setters
}

当我尝试反序列化这个结构时,我有一个连续的trable。我使用POST方法,我不确定,如果Json注释适用于POST方法,或仅适用于GET。我已将此抽象类更改为普通公共类,但我仍然使用无法识别的字段名称AbstractInferDTO [" infer1Name"],而不是市场可忽略的错误。我使用注释@JsonIgnoreProperties(ignoreUknown = true)或其他方式 - objectMapper.configure(DeserializeFeature.FAIL_ON_UKNOWN_PROPERTIES,false),但没有任何作用。 请问你能帮帮我吗?我没有想法。

0 个答案:

没有答案