转自:http://blog.csdn.net/zgf19930504/article/details/49506567
java 解析XML 的方法有很多, 常见的解析技术有 SAX 解析, DOM 解析, JDOM 解析, DOM4J 解析, JAXB解析等,其中SAX 解析采用的是流式解析,一遍过,不能折回解析,占用内存少; 而DOM ,JDOM,DOM4J,JAXB 解析采用的是将整个XML 文档全部加载到内存中,然后进行解析,此种解析方式占用内存大,解析效率相对较慢。 接下来笔者就简单地做一下性能对比分析。
【1. 对比SAX、DOM、JDOM、DOM4J、JAXB 在解析XML 方面的速度对比】
【students_bigfile.xml 格式, 大小82.6M 】
- <?xml version="1.0" encoding="UTF-8"?>
- <Students>
- <!--这是第1个Student 元素-->
- <Student grade="2" index="1">
- <Name>zong_0</Name>
- <Age>20</Age>
- <Sex>boy</Sex>
- <Address>beijing No.0</Address>
- <Number>1000</Number>
- </Student>
- <!--这是第2个Student 元素-->
- <Student grade="1" index="2">
- <Name>zong_1</Name>
- <Age>21</Age>
- <Sex>girl</Sex>
- <Address>beijing No.1</Address>
- <Number>1001</Number>
- </Student>
- <!--这是第3个Student 元素-->
- <Student grade="2" index="3">
- <Name>zong_2</Name>
- <Age>22</Age>
- <Sex>boy</Sex>