如何将 .xsd 文件中的复杂类型转换为 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 表示复杂类型?
最佳答案
看来@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;
}
}
关于java - 带有简单 XML 框架的复杂类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13730462/