快速业务通道

体验Spring的Object/XML映射支持 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
组的对象(本例中为 SimpleBean 实例)

一个 StreamResult 对象,它基本上表示一个 XML 输出抽象

loadSimpleBean() 方法执行解组。首先,您获取一个指向 simplebean.xml 的 FileInputStream 对象,然后,您使用解组器对象(通过 Spring 的依赖项注入实例化)调用 unmarshal 方法。唯一需要的参数是一个包装 FileInputStream 对象的 StreamSource 对象。注意,解组将创建一个泛型对象,因此您必须将其显式设置为 SimpleBean 类型。

即使这个类和 Spring 配置文件已经就绪,您也还没有准备好运行这段代码。还记得 清单 1 中的映射文件吗?您还需要定义那个映射文件。定义代码如 清单 3 所示,而且,再说一遍,它也必须在运行时位于类路径中。

清单 3. mapping.xml 文件

<mapping>      <class name="com.xyz.SimpleBean">        <map-to xml="simplebean"/>        <field name="age" type="integer">         <bind-xml name="age" node="element"/>        </field>        <field name="executive" type="boolean">         <bind-xml name="is-executive" node="element"/>        </field>        <field name="jobDescription" type="string">         <bind-xml name="job" node="element"/>        </field>        <field name="name" type="string">         <bind-xml name="name" node="element"/>        </field>      </class> </mapping>

清单 3 中的映射文件特定于 O/X 映射的 Castor 实现。第一个元素(class)定义要映射到一个 XML 输出的类。您必须指定完整路径。

map-to 元素提供 XML 文件的根元素的名称。这很重要,因为 XML 规范规定,每个 XML 文件必须有一个根元素。

每个 field 元素都将被映射到 SimpleBean 类中的一个特定字段。每个 field 元素的 bind-xml 子元素用于指定关于该字段的特定于 XML 的信息,如对应的 XML 元素的名称,每个字段的值应该是一个元素值还是一个属性值。如您所见,在本例中,所有值都是元素值。

体验Spring的Object/XML映射支持(4)

时间:2011-02-05 IBM Brian M. Carey

测试

尽管代码已经编写完成,但在执行这个应用程序之前,您必须处理一些依赖项。

特定于 Spring 的依赖项有:

org.springframework.asm-3.0.0.M4.jar

org.springframework.beans-3.0.0.M4.jar

org.springframework.context-3.0.0.M4.jar

org.springframework.core-3.0.0.M4.jar

org.springframework.expression-3.0.0.M4.jar

org.springframework.oxm-3.0.0.M4.jar

特定于 Castor 的依赖项有:

castor-1.3-core.jar

castor-1.3-xml.jar

您还需要 commons-logging-1.1.1.jar 和 log4j-1.2.15.jar,因为 Spring 框架需要它们。

所有这些 Java Archive (JAR) 文件必须在运行时位于类路径中。如果您在没有这些依赖项的情况下试图运行代码,您很可能会收到一个异常,指出某个类没有找到。如果遇到这种情况,只需双击您的类路径,确保所有的必要依赖项已就绪。事实上,要成功编译这段代码,您需要大部分 JAR 文件。

您可以使用您钟爱的 IDE 或只是使用命令行来运行 OXMExample.class。要从命令行运行,只需从您的工作目录输入 java -cp [classpath] OXMExample,这里的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号