如何解析可以是对象或字符串的值 - Java - Jackson

时间:2014-02-03 21:28:28

标签: java jackson

我正在使用Jackson对某些xml进行反序列化。我的xml具有可以是对象或字符串的值。这是我的xml

<FormFieldHidden name="RequestTime">
  <DefaultValue>
    <DataSourceName>DataSourceCurrentTime</DataSourceName>
  </DefaultValue>
</FormFieldHidden>
<FormFieldHidden name="TradPtnrID">
  <DefaultValue>043355932</DefaultValue>
</FormFieldHidden>

这是我的java:

@JsonIgnoreProperties(ignoreUnknown = true)
public class Forms {

    public Form form;

    public Forms() {
      form = new Form();
    }

    public static class Form extends Asset {
      public String version;
      public String description;

    public List<Section> sections;

    }

    public static class Section {
      public String label;
      public int totalColumns;
    public List<FormFieldHidden> formFields;
    }

    public static class FormFieldHidden {
      public String defaultValue;
    }
}

如何提取defaultValue无论是对象还是字符串?

1 个答案:

答案 0 :(得分:0)

我没与杰克逊合作,但也许instanceof会有所帮助, 在伪代码中

if (value instanceof Class){Class c=value;}
else{String s=value;}