Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 大型xml文件的快速xml解析器_Java_Xml - Fatal编程技术网

Java 大型xml文件的快速xml解析器

Java 大型xml文件的快速xml解析器,java,xml,Java,Xml,我们有非常大的xml文件(5-10MB),其中包含大量数据,我们需要用java开发POC来解析它,并通过维护适当的关系将它们插入数据库表中 谁能告诉我这种设计的最佳实践是什么?如何以更高效的方式解析它们?在Java中解析XML有三种主要方法 DOM—将整个文件读入内存并在其中漫游 PUSH-例如SAX-解析文件,并使用回调来告诉您当文件在解析器中运行时发生了什么 PULL-例如StAX-动态解析文件,但逐个从文件中拉出每个元素 有关更一般性的讨论,请参阅 有关推/拉辩论的详细讨论,请参阅。 对于

我们有非常大的xml文件(5-10MB),其中包含大量数据,我们需要用java开发POC来解析它,并通过维护适当的关系将它们插入数据库表中


谁能告诉我这种设计的最佳实践是什么?如何以更高效的方式解析它们?

在Java中解析XML有三种主要方法

DOM—将整个文件读入内存并在其中漫游

PUSH-例如SAX-解析文件,并使用回调来告诉您当文件在解析器中运行时发生了什么

PULL-例如StAX-动态解析文件,但逐个从文件中拉出每个元素

有关更一般性的讨论,请参阅

有关推/拉辩论的详细讨论,请参阅。
对于大文件,DOM将不能很好地工作。为了提高速度,其他两个都可以正常工作。

sax解析器适用于此用例