XML_与_Java_技术_用_Castor_进行数据绑定.docVIP

XML_与_Java_技术_用_Castor_进行数据绑定.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XML_与_Java_技术_用_Castor_进行数据绑定

对于主要关心文档数据内容的应用程序,Java XML 数据绑定是一种代替 XML 文档模型的强大机制。本文中,企业 Java 专家 Dennis Sosnoski 介绍数据绑定,并讨论什么使它如此令人瞩目。然后,他向读者展示了如何利用 Java 数据绑定的开放源代码 Castor 框架来处理日益复杂的文档。如果您的应用程序更多的把 XML 作为数据而不是文档,您就会愿意了解这种处理 XML 和 Java 技术的简单有效的方法。 应用程序中使用 XML 文档的多数方法都把重点放在 XML 上:从 XML 的观点使用文档,按照 XML 元素、属性和字符数据内容编程。如果应用程序主要关心文档的 XML 结构,那么这种方法非常好。对于更关心文档中所含数据而非文档本身的许多应用程序而言,?数据绑定提供了一种更简单的使用 XML 的方法。 文档模型与数据绑定 文档模型和数据绑定都在内存中建立文档的表示,都需要在内部表示和标准文本 XML 之间双向转换。两者的区别在于文档模型尽可能保持 XML 结构,而数据绑定只关心应用程序所使用的文档数据。 为了说明这一点,图 1 给出了一个简单 XML 文档的数据模型视图。文档成分——在这个例子中只有元素和文本节点——通过反映原始 XML 文档的结构连接在一起。形成的节点树很容易和原始文档联系,但要解释树中表示的实际数据就不那么容易了。 图 1. 文档的文档模型视图 ? 如果应用程序使用 XML 文档模型方法,您就需要处理这种类型的树。这种情况下,您将使用节点之间的父子关系在树的上下层之间导航,使用属于同一父节点的子女之间的兄弟关系在树的同一层中导航。您可以非常详尽地处理树结构,当把树序列化为文本时,生成的 XML 文档将反映您所做的修改(比如插入的注释)。 现在来看看与图 1 截然不同的图 2,它表示同一文档的数据绑定视图。在这里,转换过程几乎隐藏了原始 XML 文档的所有结构,但是因为只有通过两个对象,更容易看清楚真正的数据,也更很容易访问这些数据。 图 2. 文档的数据绑定视图 ? 使用这种数据结构就像是一般的 Java 编程——甚至根本不需要知道 XML!(哦,还是不要走得?太远了——我们这些专家顾问还得活……)您的项目中至少要有人明白,这种数据结构和 XML 文档之间的映射是如何建立的,但这仍然是向简化迈出的一大步。 不?仅仅是编程的简化,数据绑定还带来其他的好处。与文档模型方法相比,因为抽掉了许多文档细节,数据绑定通常需要的内存更少。比如前面两个图中所示的数据结构:文档模型方法使用了 10 个单独的对象,与此相比数据绑定只使用了两个。要创建的东西少,构造文档的数据绑定表示可能就更快一些。最后,数据绑定与文档模型相比,应用程序可以更快地访问数据,因为您可以控制如何表示和存储数据。我后面还要讲到这一点。 既然数据绑定那么好,为何还要使用文档模型呢?以下两种情况需要使用文档模型: 应用程序真正关注文档结构的细节。比方说,如果您在编写一个 XML 文档编辑器,您就会坚持使用文档模型而非数据绑定。 您处理的文档没有固定的结构。比如实现一种通用的 XML 文档数据库,数据绑定就不是一种好办法。 许多应用程序使用 XML 传输数据,但并不关心文档表示的细节。这类应用程序非常适合使用数据绑定。如果您的应用程序符合这种模式,请继续读下去。 Castor 框架 目前有几种不同的框架支持 Java XML 数据绑定,但还没有标准的接口。这种情况最终会得到改变:Java Community Process (JCP) 的 JSR-031 正在努力定义这方面的标准(请参阅?参考资料)。现在让我们选择一个框架并学习使用它的接口。 本文选择了 Castor 数据绑定框架。Castor 项目采用 BSD 类型的证书,因此可在任何类型的应用程序(包括完整版权的项目)中使用。 Castor 实际上仅仅有 XML 数据绑定,它还支持 SQL 和 LDAP 绑定,尽管本文中不讨论这些其他的特性。该项目从 2000 年初开始发起,目前处于后 beta 状态(一般可以使用这个版本,但是如果需要问题修正,您可能需要升级到目前的 CVS 版本)。请参阅?参考资料部分的 Castor 站点链接,以了解更多的细节并下载该软件。 默认绑定 Castor XML 数据绑定很容易上手,甚至不需要定义 XML 文档格式。只要您的数据用类 JavaBean 的对象表示,Castor 就能自动生成表示这些数据的文档格式,然后从文档重构原始数据。 那么“类 JavaBean”是什么意思呢?真正的 JavaBean 是可视化组件,可以在开发环境中配置以用于 GUI 布局。一些源于真正 JavaBean 的惯例已经被 Java 团体普遍接受,特别是对于

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档