Java 基于对象类型的xml反序列化

Java 基于对象类型的xml反序列化,java,xml,jackson,deserialization,jackson-dataformat-xml,Java,Xml,Jackson,Deserialization,Jackson Dataformat Xml,有没有反序列化的方法 <Foo> <DataElementList> <DataElement> <DataElementList> <DataElement>String<DataElement> </DataElementList> </DataElement> <Dat

有没有反序列化的方法

    <Foo>
      <DataElementList>
       <DataElement>
         <DataElementList>
            <DataElement>String<DataElement>
         </DataElementList>
       </DataElement>
       <DataElement>ABC<DataElement>
     </DataElementList>
    </Foo>
DataElementList.java

    public class DataElement {
       @JacksonXmlProperty(localName = "Name")
       private String name;
       @JacksonXmlProperty(localName = "Value")
       private Object value;
    }
   public class DataElementList extends ArrayList<DataElement> {
       @Override
    public boolean add(DataElement dataElement) {
        return super.add(dataElement);
    }
   }

公共类DataElementList扩展了ArrayList{
@凌驾
公共布尔添加(数据元素数据元素){
返回super.add(数据元素);
}
}
如何基于类型进行反序列化,或者像JsonDeserializer那样进行自定义反序列化?也许是有注释的? 目前,它正在创建键值对的hashmap。(我还有一个包装对象
DataElementCompoundList