0
我正在为给定的类生成XML文件。但是元素按照字母顺序变得生成,而不是按照他们的声明顺序。类有大约40个元素,所以@XmlType(propOrder = {})不会有用。有没有其他方法?如何获得与JAXB类中定义的相同的XML元素顺序
我正在为给定的类生成XML文件。但是元素按照字母顺序变得生成,而不是按照他们的声明顺序。类有大约40个元素,所以@XmlType(propOrder = {})不会有用。有没有其他方法?如何获得与JAXB类中定义的相同的XML元素顺序
不幸的是,无法使用@XmlType(propOrder = {}),按照声明的顺序为给定的类生成XML文件。
字母顺序可能由JAXB实现中@XmlAccessorOrder的默认行为引起,可能在XmlAccessOrder.ALPHABETICAL上设置。您可以通过注释你的类进行更改:
@XmlAccessorOrder(XmlAccessType.UNDEFINED)
但顺序将取决于系统的反射实现,并且可能不会给你你想要的东西。
在propOrder中列出40个元素可能有点烦人,但它是正确的方法。
来源:https://docs.oracle.com/cd/E19316-01/819-3669/bnbcz/index.html
实际上我并不需要元素的某些定义顺序。无论元素的顺序如何,Xml都被完美解析。还是谢谢 –