当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 本文转自 IBM developerWorks 中国网站 对象,无处不在的对象 在这个由四部分组成的系列文章的第一部分,我们将弄清什么是数据绑定,与在 Java 应用程序中处理 XML 数据的其它方法相比它有什么优势,以及如何开始使用它。
 

 

    摘要:(三)使用pear处理错误 你也可以使用pear来处理错误。当发生错误,将返回一个 pear_error对象。后面的代码通过一个静态方法pear::iserror()来检验这个对象。如果错误确实发生了,那么返回的pear_error对象将提供你需要的所有相关信息: pear::getmessage() - the error message 出错信息 pear::gettype() - the pear_error......
    摘要:netfilter/iptables 是与最新的 2.4.x 版本 linux 内核集成的 ip 信息包过滤系统。如果 linux 系统连接到因特网或 lan、服务器或连接 lan 和因特网的代理服务器,则该系统有利于在 linux 系统上更好地控制 ip 信息包过滤和防火墙配置。mugdha vairagade 将介绍 netfilter/iptables 系统、它是如何工作的、它的优点、安装和配置以及如何使用它来配置 linux 系统上的防火墙以过滤 ......


从XML到Java代码的数据绑定之一
本文转自 ibm developerworks 中国网站

【相关文章:连接字符串

【扩展阅读:高智能电脑(一)

                 对象,无处不在的对象 【扩展信息:坚持学asp.net——(五)

  在这个由四部分组成的系列文章的第一部分,我们将弄清什么是数据绑定,与在 java 应用程序中处理 xml 数据的其它方法相比它有什么优势,以及如何开始使用它。这一部分将考查为什么使用数据绑定,以及如何为各种约束建立模型,使 xml 文档能转换成 java 对象。同时还涵盖用于生成数据绑定类的输入与输出。

  您希望在您的 java 应用程序中使用 xml 吗?那么好,同成千上万的其他人一起上这条船吧。当您深入了解 xml 以后,也许您会发现 dom 与 sax api(请参阅参考资料)不过是唬人的东西。您可能认为肯定存在某种简单方法可以取得 xml 文档,并通过 java 应用程序访问它,对吗?不必通过回调或复杂的树状结构,而是使用像 setowner(stringowner) 与 int getnumorders() 这样的方法,对吗?如果您曾经沿着这一思路考虑问题,那么数据绑定就是您要寻找的解决方案。

  分析各种选择

  当今各种 xml 与 xml 主义正泛滥成灾(xsl、rdf、命名空间、rss、xml schema、xslt...),您可能认为现在会有很多方法去访问 java 应用程序中的 xml 数据。令人惊讶的是,如果您寻根究底,实际只存在三种访问 xml 数据的方法。没错 -- 只有三种方法,其中的一种还是最近随一种新的 java api 才出现的。

  应该这样来看待这一问题:选择范围小使您更易于选出适合于您的方法。

  回调

  回调是作为一种事件驱动模型工作的。当分析 xml 文档时,某些事件 -- 如文档的起始与某个元素中的字符数据的起始 -- 将触发回调方法。通过使用执行逻辑所需的数据,您可以实现这些事件的 java 代码。要弄清这种方法不能全靠直觉;开发人员通常要花费一段时间来理解与掌握回调模型的使用。sax,用于 xml 的一种简单 api,是这种 xml 使用方法的事实上的标准。

  树

  更常见、更流行的是这种 api,它们取得一个 xml 文档,然后创建数据的树状结构。xml 文档成为树首,充当一种容器。它有若干子级,如根元素。根元素又有其附加的子级,依此类推,直到(在某种意义上)获得 xml 数据的一幅图为止。因为几乎每个大学生在某个阶段肯定都处理过树状结构,所以这就可用作表示 xml 数据的一种非常直观的方法。

  用于 xml 文档树状表示的最流行的 api 就是 w3c 的推荐标准,即文档对象模型 (dom)。一种更新的 api,jdom (这不是首字母缩写词)最近也正一直在推广并流行开来。(虽然这个方案是我与 jason hunter 建立的,但我还得说实话。)另外,dom 与 jdom 都是 spinnaker 方案设计的基本要求,spinnaker 是一种新的 xml 分析器,它作为 apache xml 方案的一部分正在开发之中。

  虽然树状 api 看起来比事件驱动的 sax 更易于使用,但它们并不总是合适的。非常大的文档可能需要大量的内存(尤其是使用 dom 时);当对树结构执行转换 (xslt) 时,系统可能停止运转甚至彻底崩溃。虽然更新的 api(如 jdom)能处理这些问题,但如果您必须处理极大量的数据,它们仍将是一个问题。并且,有时开发人员宁愿将 xml 文档中的数据建模为一个简单的带有值的读写方法的 java 对象,而不用树状模型工作。例如,开发人员会宁愿不去访问名为 skunumber 的子节点并设置该节点的文本值,而只想调用 setskunumber("mysku") 并继续进行。


...   下一页
 ·用init玩转 linux 运行级别    »显示摘要«
    摘要:也许大家偶然会发现/sbin里有个init命令。你知道它是如何使用的吗? 如果你不喜欢使用图形登录方式,如何能够让用户在控制台下运行startx命令呢? 有时你要维护服务器,暂时不希望别的用户登录系统,但自己仍对网络有访问权,又该怎么办呢? 其实,如果你知道了三个问题之间的关系,它们就不成问题了。让我们这里入手了解一下linux的运行级别(runlevel)吧! 其实init是linux系统里的根进程,是系统所有进程的祖先。它的主要作用是根据记录在/etc......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE