使用复杂字段反序列化类型并忽略其某些属性

时间:2017-05-30 09:48:43

标签: java xml jackson-dataformat-xml

我需要按以下格式反序列化XML:

<foo>
    <field1>
        <value>ABC</value>
        <text>A B C</text>
    </field1>
    <field2>
        <value>DEF</value>
        <text>D E F</text>
    </field2>
    <field3>1234</field3>
</foo>

请注意,field1field2是实现通用接口的不同类型。此类不代表列表。

我实际上并不关心<value>元素,因此只想忽略它们并使用<text>元素的值作为字段值。目的是将上面的XML反序列化为类似的类型:

public class FooSimple {
    private String field1;    // holds value of field1.text element
    private String field2;    // holds value of field2.text element
    private int field3;

    // constructor and getters
}

如何做到这一点?我想避免更改FooSimple以包含直接映射到XML的字段。

0 个答案:

没有答案