[英]JAXB rename attribute
我有一个名字很烂的类,它用JAXB转换成XML。 使用@XmlRootElement(name="nicername")
,我能够将外部XML标签重命名为<nicername>
。
如何将具有丑陋类名的单个属性重命名为一些不错的名称?
您可以使用@XmlAttribute
和@XmlElement
批注来更改XML名称。 如果您对字段进行注释,请确保在类上使用@XmlAccessorType(XmlAccessType.FIELD)
注释:
@XmlRootElement(name="nice-name")
@XmlAccessorType(XmlAccessType.FIELD)
public class UglyName {
@XmlElement(name="nice-element-name")
private String uglyElementName;
@XmlAttribute(name="nice-attribute-name")
private String uglyAttributeName;
}
或者,您可以注释属性:
@XmlRootElement(name="nice-name")
public class UglyName {
private String uglyElementName;
private String uglyAttributeName;
@XmlElement(name="nice-element-name")
public String getUglyElementName() {
return uglyElementName;
}
public void setUglyElementName(String name) {
this.uglyElementNamne = name;
}
@XmlAttribute(name="nice-attribute-name")
public String getUglyAttributeName() {
return uglyAttributeName;
}
public void setUglyAttributeName(String name) {
this.uglyAttributeNamne = name;
}
}
您可以使用以下方法为对象属性定义备用名称:
XMLAttribute
批注 XMLElement
注释 @XmlAttribute和@XmlElement批注都可以使用与@XmlRootElement批注相同的语法按名称重新映射。 因此,只需将相关注释附加到您需要重新映射的每个单独的字段/属性,并为“名称”提供参数即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.