JiBX 1.2,第1部分: 从Java代码到XML模式 - 编程入门网
lt;xs:annotation>
<xs:documentation>Number of units ordered.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute type="xs:float" use="required" name="price">
<xs:annotation>
<xs:documentation>Price per unit.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute type="xs:long" use="required" name="orderNumber"/>
<xs:attribute type="xs:date" name="orderDate">
<xs:annotation>
<xs:documentation>Date order was placed with server.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute type="xs:date" name="shipDate">
<xs:annotation>
<xs:documentation>
<![CDATA[Date order was shipped. This will be <code>null</code> if the order
has not yet shipped.]]></xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:schema>
JiBX 1.2,第1部分: 从Java代码到XML模式(6)时间:2012-01-14 IBM Dennis Sosnoski默认情况下,BindGen 将为只使用一次的类型生成带有嵌套的 complexType 和 simpleType 定义的模式,并为使用多次的类型生成带有各种定义的模式。在这种情况下,嵌套的样式将得到只有 3 个全局定义的模式:address 和 order 复杂类型以及 order 元素。Order 类在两个位置使用了 Address 类(表示帐单地址和送货地址),因此该类在模式中是由单独的全局定义表示的(仅当定义为全局定义时,模式才允许您重用定义)。Java 数据结构中的其他类(Customer、Item 和 Shipping)都只在 Order 类中被引用了一次,因此相应的类型定义是直接嵌入到 order 模式类型定义中的。 可以通过输入类中的 Javadoc 生成模式文档,这是 BindGen 比较棒的功能之一。在 清单 2 中,您可以看到 清单 1 中带有 Javadoc 的各个字段的模式文档,以及与带有 Javadoc 的类对应的各个全局类型的模式文档。BindGen 的默认处理并不能使所有形式的 Javadoc 与模式组件相匹配 — 并且某些 Javadoc(例如关于 “get” 访问方法的 Javadoc)在转换成模式文档后可能看上去很奇怪 — 但是得到的模式文档对于阐明 XML 表示的正确用法极为有用。如果需要在转换过程中对文本进行某些更改(例如从 “get” 方法 Javadoc 中去掉 “Get the ...” 引导语句),您甚至可以为用作模式文档的 Javadoc 定义您自己的 formatter 类。 仅当您可以获得类的源代码并且为 BindGen 提供一个实参告诉它根目录路径时,才可以使用这项 Javadoc 转换功能。在我先前提供的命令行样例中,提供的源代码路径为 -s src。 生成的 JiBX 绑定 除了模式定义之外,BindGen 还将生成 JiBX 绑定定义(在本例中为 binding.xml 文件),该绑定定义将告诉 JiBX 绑定编译器如何在 Java 类与 XML 之间进行转换。实际上,该绑定定义是 BindGen 的主要输出,同时通过绑定生成了模式。绑定定义包含 JiBX 所完成的转换的完整信息,因此它们必然非常复杂。幸运的是,使用 BindGen 绑定和模式生成 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |