如果我有一个带有注释的类
@XmlType(name = "someDTO", propOrder = {
"firstField",
"secondField",
})
但 XML(例如来自 SOAP 响应)看起来像
<return><firstField>a</firstField><secondField>b</secondField><thirdField>c</thirdField></return>
我的对象仍然会填充firstField和secondField,而thirdField将被忽略。
为什么是这样?情况会一直如此吗?如果存在额外字段,是否有办法阻止对象创建?
Some JAXB (JSR-222) http://jcp.org/en/jsr/detail?id=222如果映射到 XML 元素的属性未包含在实现中,那么实现将会抱怨propOrder
. propOder
on @XmlType
不用于控制包含/排除哪些元素。
排除属性的选项
- 如果您想排除少于一半的属性,那么我建议您标记您想要排除的属性
@XmlTransient
.
- 如果您想排除一半以上的属性,那么我建议使用
@XmlAccessorType(XmlAccessType.NONE)
并注释您想要包含的属性。
了解更多信息
- http://blog.bdoughan.com/2012/04/jaxb-and-unmapped-properties.html http://blog.bdoughan.com/2012/04/jaxb-and-unmapped-properties.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)