由于项目的需要,要解析一个20M大小的xml,分别使用DOM,SAX,JDOM和DOM4J进行比较
文件大小在10k左右时工作良好
但是在使用20M的xml测试时,没有一个可以正常工作
DOM
:Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
JDOM
:Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
DOM4J
:Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
SAX
:Error during parsing 0
:java.lang.ArrayIndexOutOfBoundsException: 0
结果有些出乎意料,不过考虑到分配给jvm的未必是所有的系统内存,所以重新运行, java -Xms256m -Xmx256m MyClass得到了DOM,JDOM,DOM4J以及SAX的测试结果,考试成绩是SAX表现最佳,JDOM最差