我想知道是否有可能,如果有,如何重命名一个xsd文件枚举。
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="blabla:xsd:3"
elementFormDefault="unqualified" attributeFormDefault="unqualified" version="3.1">
<xsd:simpleType name="IrrelevantEnumerationType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="IRRELEVANT1"/>
...
...
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="RelevantEnumerationType">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="RE_LEVANT"/>
<xsd:enumeration value="IRRELEVANT2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
生成的java代码如下所示
@XmlType(name = "RelevantEnumerationType", namespace = "blabla:xsd:3")
@XmlEnum
public enum RelevantEnumerationType {
RE_LEVANT,
IRRELEVANT2;
public String value() {
return name();
}
public static RelevantEnumerationType fromValue(String v) {
return valueOf(v);
}
}
jaxb文件。
<?xml version="1.0"?>
<jxb:bindings version="2.0" xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc= "http://java.sun.com/xml/ns/jaxb/xjc"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:bindings>
<jxb:globalBindings>
<xjc:simple/>
</jxb:globalBindings>
</jxb:bindings>
</jxb:bindings>
我删除了大部分不相关的信息,只保留了原来的结构。
如您所见,我有一个生成为相关的枚举,我希望在生成java代码时删除下划线。
所以结果应该是相关的。
1条答案
按热度按时间hm2xizp91#
这样就行了
您可以在文档中阅读有关绑定的更多信息https://docs.oracle.com/cd/e17802_01/webservices/webservices/docs/1.5/tutorial/doc/jaxbusing4.html