gpt4 book ai didi

xml - xsd 文件中带有下划线的 xsd 到 java

转载 作者:行者123 更新时间:2023-12-04 04:45:12 28 4
gpt4 key购买 nike

考虑下面的 xsd 文件:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="Customer_Info" type="Customer"/>
<xsd:complexType name="Customer_Info">
<xsd:all>
<xsd:element name="Profile" type="Profile" minOccurs="1" maxOccurs="1"/>
<xsd:element name="Address" type="integer" minOccurs="1" maxOccurs="1"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="Profile">
<xsd:all>
<xsd:element name="Name" minOccurs="1">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Email" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="50"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Phone" maxOccurs="1">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="12"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="Address">
<xsd:all>
<xsd:element name="FlatNo" minOccurs="1">
<xsd:simpleType>
<xsd:restriction base="xsd:integer">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Street" minOccurs="1">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Landmark" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:all>
</xsd:complexType>
</xsd:schema>

正如您在此我在 Customer_Info 复杂类型中看到的“_”中所看到的。现在,当我使用 JAXB 的 xjc 命令生成 Java 文件时,我得到的文件名为 CustomerInfo.java。
我还想在生成的 Java 文件中将 flatNo 的类型作为 String

....而我希望将文件名作为 Customer_Info.java。谁可以帮我这个事?提前致谢...

最佳答案

您可以使用外部绑定(bind)文件来保留 _ .

<?xml version="1.0" encoding="UTF-8"?>
<jxb:bindings
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
version="2.1">
<jxb:globalBindings underscoreBinding="asCharInWord"/>
</jxb:bindings>

使用 xjc 时您可以使用 -b引用绑定(bind)文件的选项。
xjc -b binding.xml schema.xsd

关于xml - xsd 文件中带有下划线的 xsd 到 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18308043/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com