DOM、SAX、JDOM、DOM4J四种XML解析方法PK

基础方法(指不需要导入jar包,java自身提供的解析方式):DOM、SAX
DOM:是一种平台无关的官方解析方式
   --优点:
          (1)形成了树结构,直观好理解,代码更易编写
          (2)解析过程中树结构保留在内存中,方便修改
   --缺点:
           当xml文件较大时,对内存耗费比较大,容易影响解析性能并造成内存溢出

SAX:基于事件驱动的解析方式
   --优点:
          (1)采用事件驱动模式,对内存耗费比较小
          (2)适用于只需要处理xml中数据
   --缺点:
          (1)不易编码
          (2)很难同时访问同一个xml中的多处不同数据

扩展方法(在基础方法上扩展出的,只有java中能够使用的解析方法):JDOM、DOM4J
JDOM:
     仅使用具体类而不使用接口
     API大量使用了Collections类
DOM4J:
     是JDOM的一种智能分支,它合并了许多超出基本xml文档表示的功能
     使用接口和抽象基本类方法,是一个优秀的java xml API
     具有性能优异、灵活性好、功能强大和极端易用的特点
     是一个开放源代码的软件

性能测试:(少量数据时)

总结:具体使用哪种解析方式视具体情况而定,对于复杂文件,推荐使用DOM4J。

Jumping from failure to failure with undiminished enthusiasm is the big secret to success.
原文地址:https://www.cnblogs.com/chongerlishan/p/5945860.html