【发布时间】:2021-11-12 00:37:53
【问题描述】:
使用 JAXB 创建 XML 后,无法使用 @XmlElement 或 @XmlAttribute 以预期的方式获取 @XmlRootElement 的值。
代码 1
@XmlRootElement(name = "USER_ID")
@XmlAccessorType(XmlAccessType.NONE)
public class UserD {
@XmlElement(name = "USER_ID")
private String userId;
@XmlElement(name = "Name")
private ArrayList<Name> name;
输出
<USER_ID>
<USER_ID>1</USER_ID>
<Name></Name>
<Name></Name>
<Name></Name>
<USER_ID>
代码 2
@XmlRootElement(name = "USER_ID")
@XmlAccessorType(XmlAccessType.NONE)
public class UserD {
@XmlAttribute(name = "USER_ID")
private String userId;
@XmlElement(name = "Name")
private ArrayList<Name> name;
输出 2
<USER_ID USER_ID="1">
<Name></Name>
<Name></Name>
<Name></Name>
<USER_ID>
需要的输出
<USER_ID>1
<Name></Name>
<Name></Name>
<Name></Name>
<USER_ID>
【问题讨论】:
-
我也无法让它工作,但 XmlValue 和 XmlMixed 注释可以帮助您找到可能的解决方案
-
您是否使用其他方法来完成这项工作?
标签: java xml jaxb marshalling