Java / JAXB:将具有相同名称但不同属性值的XML元素解组为不同的类成员

时间:2011-02-22 13:03:36

标签: java xml jaxb

我正在尝试根据其中一个属性将具有多个“Fields”元素的XML解析为不同的类成员。 这是XML:

<Series>
    <Fields type="SelectedFields" operation="SUM">
        <Field name="Remaining" />
        <Field name="Invested" />
    </Field>
    <Fields type="FirstSelectedFields" operation="SUM">
        <Field name="Estimated" />
    </Field>
</Series>

这是应该映射到的java类:

public class APMSeries {

    private List<Field> selectedFields;

    private List<Field> firstSelectedFields;

}

有谁能告诉我如何将带有属性type =“SelectedFields”的Fields元素设置为selectedFields成员,将属性type =“FirstSelectedFields”的Fields元素设置为firstSelectedFields成员?

1 个答案:

答案 0 :(得分:1)

public class APMSeries {

    @XmlElementWrapper(name="SelectedFields")
    private List<Field> selectedFields;

    @XmlElementWrapper(name="FirstSelectedFields")
    private List<Field> firstSelectedFields;

}