如何在JaxB中处理通用字段?

时间:2017-03-18 16:45:33

标签: xml generics serialization jaxb

我有一个带有这样的通用字段的参数化类,我正在试图如何编写一个处理泛型字段的适配器:

public class Thing<T> {

    private T options;

    @XmlElement(nillable = true)
    @XmlNullPolicy(isSetPerformedForAbsentNode = false, nullRepresentationForXml = XmlMarshalNullRepresentation.XSI_NIL)
    @XmlJavaTypeAdapter(OptionsAdapter.class)
    @Override
    public void setOptions(final T options) {
        this.options = options;
    }
}

我开始编写适配器类然后意识到,我不知道如何做到这一点:

public class OptionsAdapter<T> extends XmlAdapter<Object, T> {

    @Override
    public T unmarshal(Object v) throws Exception {
        //What do I do to identify the actual type of the object?
    }

    @Override
    public Object marshal(T v) throws Exception {
        //???
    }
}

我发现了很多关于如何处理泛型集合的信息。没有关于如何处理简单通用字段的内容。

0 个答案:

没有答案