XML 五、四种 XML 解析方式大 PK

基础方法:DOM(平台无关的官方解析方式)、SAX(基于事件驱动的解析方式)

扩展方法:JDOM、DOM4J(在基础的方法上扩展出的,只有在java中能够使用的解析方法)

 

DOM:

一次性将整个xml文件加载到内存中,形成DOM树

优点:

形成了树结构,直观好理解,代码更容易编写 解析过程中树结构保留在内存中,方便修改

缺点:

当xml文件较大时,对内存消耗比较大,容易影响解析性能并造成内存溢出

 

SAX:

逐条语句判断解析

优点:

采用事件驱动模式,对内存消耗比较小 适用于只需要处理xml中数据时

缺点:

不易编码 很难同时访问同一个xml中的多处不同数据

 

JDOM:

仅使用具体类而不使用接口

API大量使用了Collections类

 

DOM4J:

JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能

DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API

具有性能优异、灵活性好、功能强大和极端易使用的特点

是一个开放源代码的软件

 

DOM4J:JDOM的一种智能分支,它合并了许多超出基本XML文档表示的功能 DOM4J使用接口和抽象基本类方法,是一个优秀的Java XML API 具有性能优异、灵活性好、功能强大和极端易使用的特点 是一个开放源代码的软件

DOM4J在灵活性和对复杂xml的支持上都要强于DOM

DOM4J的应用范围非常的广,例如在三大框架的Hibernate中是使用DOM4J的方式解析文件的。

DOM是w3c组织提供的一个官方解析方式,在一定程度上是有所应用的。

当XML文件比较大的时候,会发现DOM4J比较好用

1.JUnit:Java提供的单元测试;@Test注解;采用JUnit不需要程序入口main方法

2.性能测试结果:几kB的xml文件;建议使用DOM4J解析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值