如何将.xsd文件中的complexType转换为SimpleXML带注释的类结构。这是一个使用xjc.exe转换为JAXB的示例。不确定Simple框架的等效注释是什么。
模式:
<xsd:element name="PaymentTxnID">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="IDTYPE">
<xsd:attribute name="useMacro" type="MACROTYPE"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
JAXB生成:
public static class PaymentTxnID {
@XmlValue
protected String value;
@XmlAttribute(name = "useMacro")
protected String useMacro;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getUseMacro() {
return useMacro;
}
public void setUseMacro(String value) {
this.useMacro = value;
}
}
我如何用Simple来表示complexType?
答案 0 :(得分:2)
似乎@Text
注释就是答案。查看javadoc here。该示例在Blaise Doughan's blog entry的“将对象映射到简单内容”部分中找到。
简单的框架翻译:
public static class PaymentTxnID {
@Text
protected String value;
@Attribute(name = "useMacro")
protected String useMacro;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getUseMacro() {
return useMacro;
}
public void setUseMacro(String value) {
this.useMacro = value;
}
}