我正在使用在.NET应用程序中生成和使用的xml文件。
我需要在Java中反序列化此文件并选择使用JAXB。
但是,在尝试创建匹配类后,我发现了一个主要的区别。
有一个
@XmlRootElement
public class SomeClass{
List<NestedClass> classes;
}
我得到以下结构:
<SomeClass>
...
<NestedClasses>
...
</NestedClasses>
<NestedClasses>
...
</NestedClasses>
</SomeClass>
选择现有的结构:
<SomeClass>
...
<NestedClasses>
<NestedClass>
...
</NestedClass>
<NestedClass>
...
</NestedClass>
</NestedClasses>
</SomeClass>
是否有办法获得我所需的结构而不添加只包含嵌套类列表的类?
答案 0 :(得分:0)
您需要有一个包装集合的类。要获得所需的映射,可以使用@XmlElementWrapper
注释指定应使用分组元素。然后,您可以使用@XmlElement
注释指定表示集合中项目的元素的名称:
@XmlRootElement
public class SomeClass{
@XmlElementWrapper
@XmlElement(name="NestedClass")
List<NestedClass> classes;
}
了解更多信息