JAXB を使用して XML に変換される、非常に長い名前のクラスがあります。を使用し@XmlRootElement(name="nicername")
て、外側の XML タグの名前を に変更できます<nicername>
。
クラスの醜い名前を持つ個々の属性の名前を、適切な名前に変更するにはどうすればよいですか?
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 アノテーションはどちらも、@XmlRootElement アノテーションと同じ構文を使用して名前で再マップできます。したがって、再マップが必要な個々のフィールド/プロパティに関連する注釈を添付し、「名前」の引数を指定するだけです。
以下を使用して、オブジェクト プロパティの代替名を定義できます。
XMLAttribute
属性の注釈XMLElement
要素の注釈