SAX, DOM, JDOM , DOM4J有什么不同

网上有关“SAX, DOM, JDOM , DOM4J有什么不同”话题很是火热,小编也是针对SAX, DOM, JDOM , DOM4J有什么不同寻找了一些与之相关的一些信息进...

网上有关“SAX, DOM, JDOM , DOM4J有什么不同”话题很是火热,小编也是针对SAX, DOM, JDOM , DOM4J有什么不同寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。

1: DOM DOM 是用与平台和语言无关的方式表示 XML 文档的官方 W3C 标准。DOM 是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而 DOM 被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点。 首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树中上下导航,而不是像 SAX 那样是一次性的处理。DOM 使用起来也要简单得多。 另一方面,对于特别大的文档,解析和加载整个文档可能很慢且很耗资源,因此使用其他手段来处理这样的数据会更好。这些基于事件的模型,比如 SAX. 2:SAX 这种处理的优点非常类似于流媒体的优点。分析能够立即开始,而不是等待所有的数据被处理。而且,由于应用程序只是在读取数据时检查数据,因此不需要将数据存储在内存中。这对于大型文档来说是个巨大的优点。事实上,应用程序甚至不必解析整个文档;它可以在某个条件得到满足时停止解析。一般来说,SAX 还比它的替代者 DOM 快许多。 3:选择 DOM 还是选择 SAX ? 对于需要自己编写代码来处理 XML 文档的开发人员来说,选择 DOM 还是 SAX 解析模型是一个非常重要的设计决策。 DOM 采用建立树形结构的方式访问 XML 文档,而 SAX 采用的事件模型。 DOM 解析器把 XML 文档转化为一个包含其内容的树,并可以对树进行遍历。用 DOM 解析模型的优点是编程容易,开发人员只需要调用建树的指令,然后利用navigation APIs访问所需的树节点来完成任务。可以很容易的添加和修改树中的元素。然而由于使用 DOM 解析器的时候需要处理整个 XML 文档,所以对性能和内存的要求比较高,尤其是遇到很大的 XML 文件的时候。由于它的遍历能力,DOM 解析器常用于 XML 文档需要频繁的改变的服务中。 SAX 解析器采用了基于事件的模型,它在解析 XML 文档的时候可以触发一系列的事件,当发现给定的tag的时候,它可以激活一个回调方法,告诉该方法制定的标签已经找到。SAX 对内存的要求通常会比较低,因为它让开发人员自己来决定所要处理的tag.特别是当开发人员只需要处理文档中所包含的部分数据时,SAX 这种扩展能力得到了更好的体现。但用 SAX 解析器的时候编码工作会比较困难,而且很难同时访问同一个文档中的多处不同数据。 4:JDOM JDOM的目的是成为 Java 特定文档模型,它简化与 XML 的交互并且比使用 DOM 实现更快。由于是第一个 Java 特定模型,JDOM 一直得到大力推广和促进。正在考虑通过“Java 规范请求 JSR-102”将它最终用作“Java 标准扩展”。从 2000 年初就已经开始了 JDOM 开发。 JDOM 与 DOM 主要有两方面不同。首先,JDOM 仅使用具体类而不使用接口。这在某些方面简化了 API,但是也限制了灵活性。第二,API 大量使用了 Collections 类,简化了那些已经熟悉这些类的 Java 开发者的使用。 JDOM 文档声明其目的是“使用 20%(或更少)的精力解决 80%(或更多)Java/XML 问题”(根据学习曲线假定为 20%)。JDOM 对于大多数 Java/XML 应用程序来说当然是有用的,并且大多数开发者发现 API 比 DOM 容易理解得多。JDOM 还包括对程序行为的相当广泛检查以防止用户做任何在 XML 中无意义的事。然而,它仍需要您充分理解 XML 以便做一些超出基本的工作(或者甚至理解某些情况下的错误)。这也许是比学习 DOM 或 JDOM 接口都更有意义的工作。 JDOM 自身不包含解析器。它通常使用 SAX2 解析器来解析和验证输入 XML 文档(尽管它还可以将以前构造的 DOM 表示作为输入)。它包含一些转换器以将 JDOM 表示输出成 SAX2 事件流、DOM 模型或 XML 文本文档。JDOM 是在 Apache 许可证变体下发布的开放源码。 5: DOM4J 虽然 DOM4J 代表了完全独立的开发结果,但最初,它是 JDOM 的一种智能分支。它合并了许多超出基本 XML 文档表示的功能,包括集成的 XPath 支持、XML Schema 支持以及用于大文档或流化文档的基于事件的处理。它还提供了构建文档表示的选项,它通过 DOM4J API 和标准 DOM 接口具有并行访问功能。从 2000 下半年开始,它就一直处于开发之中。 为支持所有这些功能,DOM4J 使用接口和抽象基本类方法。DOM4J 大量使用了 API 中的 Collections 类,但是在许多情况下,它还提供一些替代方法以允许更好的性能或更直接的编码方法。直接好处是,虽然 DOM4J 付出了更复杂的 API 的代价,但是它提供了比 JDOM 大得多的灵活性。 在添加灵活性、XPath 集成和对大文档处理的目标时,DOM4J 的目标与 JDOM 是一样的:针对 Java 开发者的易用性和直观操作。它还致力于成为比 JDOM 更完整的解决方案,实现在本质上处理所有 Java/XML 问题的目标。在完成该目标时,它比 JDOM 更少强调防止不正确的应用程序行为。 DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,特别值得一提的是连 Sun 的 JAXM 也在用 DOM4J. 6:总述 JDOM 和 DOM 在性能测试时表现不佳,在测试 10M 文档时内存溢出。在小文档情况下还值得考虑使用 DOM 和 JDOM.虽然 JDOM 的开发者已经说明他们期望在正式发行版前专注性能问题,但是从性能观点来看,它确实没有值得推荐之处。另外,DOM 仍是一个非常好的选择。DOM 实现广泛应用于多种编程语言。它还是许多其它与 XML 相关的标准的基础,因为它正式获得 W3C 推荐(与基于非标准的 Java 模型相对),所以在某些类型的项目中可能也需要它(如在 javascript 中使用 DOM)。 SAX表现较好,这要依赖于它特定的解析方式。一个 SAX 检测即将到来的XML流,但并没有载入到内存(当然当XML流被读入时,会有部分文档暂时隐藏在内存中)。 无疑,DOM4J是最好的,目前许多开源项目中大量采用 DOM4J,例如大名鼎鼎的 Hibernate 也用 DOM4J 来读取 XML 配置文件。如果不考虑可移植性,那就采用DOM4J吧!

dom是富士重工斯巴鲁旗下的旅行车。英语名字是Dom诞生于1996年,当时五菱光的原型车是斯巴鲁的面包车,两辆车在外观上几乎一样,都是面包车的标准设计,但是内部的设计和大的有很大的区别。最大的特点是全时四驱系统在1996年安装在了这辆面包车上,而且是全时四驱的标准装备,这个面包车的动力系统搭载了1.2L的3个气缸的自然吸气引擎。

DOM传动系统

这辆车有手动变速器,还有自动变速器,在积极安全的配置上,也有ABS耐抱死系统,对于面包车来说,自动挡和ABS变得奢侈了,座椅的配置采用了非常灵活的设计,全车的座位配置是2+2+3,8座车型,第一列可以旋转,第二排的座位放倒后,就变成了临时的桌子,和第三排的乘客打扑克,工作和吃饭。是一款实用的移动工具车,没有自然的皮革座椅。

关于“SAX, DOM, JDOM , DOM4J有什么不同”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!

本文来自作者[胥玉聪]投稿,不代表司岷号立场,如若转载,请注明出处:https://gzsmmy.cn/xqzs/202507-5471.html

(44)

文章推荐

  • 枣馒头的做法 花样馒头枣做法100种

    枣馒头的做法1.和面团发酵:在面粉中加入适量的酵母粉,用温水和成软硬中的面团,盖上湿纱布,让面团发酵。2.准备红枣:取适量红枣,洗净对半切开,剔核后备用。3.制作枣馒头:待面团发酵至两倍大,在案板上撒干面粉,揉匀并搓成长条,切成大小基本一样的面剂子,将面剂子揉搓成圆形馒头,将准备好的红枣嵌入馒头表面

    2024年12月10日
    433
  • 法律专业怎样报考注册会计师 注册会计师报名和培训

    法律专业怎样报考注册会计师应该有帮助的,因CPA要考《经济法》《税法》,对法学专业的来学这两科就简单了。注册会计师(CPA)考试科目有《会计》、《审计》、《财务成本管理》、《公司战略与风险管理》、《经济法》《税法》《综合能力测试》。考试中允许单科报考,6+1科成绩均通过即合格。单科成绩合格者,颁发由

    2024年12月11日
    473
  • 哪家银行股息率最高

    网上有关“哪家银行股息率最高”话题很是火热,小编也是针对哪家银行股息率最高寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。股息率最高的是交通银行,根据计算,该行2020年年度分红股息率高达7.08%。股息率(DividendYieldRatio),是一

    2024年12月23日
    42
  • 深股和沪股有什么区别

    网上有关“深股和沪股有什么区别”话题很是火热,小编也是针对深股和沪股有什么区别寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。1、板块不同:沪市只有主板与B股;深市有主板、中小板、创业板和B股。2、股票代码不同:沪市主板是60开头,B股是900开头;深市主

    2024年12月26日
    40
  • A股市场出现罕见大幅震荡稀缺龙头股带动慢牛趋势

    网上有关“A股市场出现罕见大幅震荡稀缺龙头股带动慢牛趋势”话题很是火热,小编也是针对A股市场出现罕见大幅震荡稀缺龙头股带动慢牛趋势寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。受多方面因素影响,今年A股市场出现罕见大幅震荡,上证指数4月底一度跌破2900

    2024年12月27日
    40
  • 炒股开户需要多少资金?_2

    网上有关“炒股开户需要多少资金?”话题很是火热,小编也是针对炒股开户需要多少资金?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。您好,股票开户只需身份证和银行卡就行,开户免费,股票交易最低是1手100股,只要满足这个资金条件就行,买卖股票是要交一定手续

    2024年12月28日
    33
  • 个体户开专票能免税吗?

    网上有关“个体户开专票能免税吗?”话题很是火热,小编也是针对个体户开专票能免税吗?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。1.个体户开普票季度45万内,免增值税,超45万全额缴纳增值税;2.个体户开专票无论金额多少都不享受减免增值税;3.生产经营所得按

    2025年01月16日
    42
  • 英语手抄报英语单词

    网上有关“英语手抄报英语单词”话题很是火热,小编也是针对英语手抄报英语单词寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。英语在学科中的位置也是很重要的,英语中最主要的还是英语单词了英语单词就是英语的核心。下面是我为大家带来的英语手抄报,希望大家喜欢。 

    2025年01月26日
    44
  • 体育产业规划应该包括哪些内容

    网上有关“体育产业规划应该包括哪些内容”话题很是火热,小编也是针对体育产业规划应该包括哪些内容寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。体育产业规划是指综合运用各种理论分析工具,从中国以及各个地区实际状况出发,充分考虑国际国内及区域体育产业发展态势,对当

    2025年01月31日
    31
  • 香港警察机动部队和冲锋队有什么区别

    网上有关“香港警察机动部队和冲锋队有什么区别”话题很是火热,小编也是针对香港警察机动部队和冲锋队有什么区别寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。两者主要在组织、职能范围、隶属机构以及培训内容等四方面存在区别。一、组织机动部队:警察机动部队总部设于

    2025年02月09日
    19

发表回复

本站作者后才能评论

评论列表(4条)

  • 胥玉聪
    胥玉聪 2025年07月05日

    我是司岷号的签约作者“胥玉聪”!

  • 胥玉聪
    胥玉聪 2025年07月05日

    希望本篇文章《SAX, DOM, JDOM , DOM4J有什么不同》能对你有所帮助!

  • 胥玉聪
    胥玉聪 2025年07月05日

    本站[司岷号]内容主要涵盖:国足,欧洲杯,世界杯,篮球,欧冠,亚冠,英超,足球,综合体育

  • 胥玉聪
    胥玉聪 2025年07月05日

    本文概览:网上有关“SAX, DOM, JDOM , DOM4J有什么不同”话题很是火热,小编也是针对SAX, DOM, JDOM , DOM4J有什么不同寻找了一些与之相关的一些信息进...

    联系我们

    邮件:司岷号@sina.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注我们