Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.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的转换,除了XSLT还有哪些替代方案_Java_Xml_Xslt_Transform - Fatal编程技术网

Java 对于XML到XML的转换,除了XSLT还有哪些替代方案

Java 对于XML到XML的转换,除了XSLT还有哪些替代方案,java,xml,xslt,transform,Java,Xml,Xslt,Transform,我有大量XML文件(3000多个唯一节点),需要从一种格式转换为另一种格式。我主要关心的是速度和内存使用。除了使用StAX以编程方式解析输入XML并使用StAX创建目标XML之外,还有其他方法可以替代XSLT吗 我知道有一个STX项目,但我认为它没有得到维护。Smooks可以帮助您。方便快捷 我发现在Java中对XML结构进行简单的编程操作非常有用。如果您非常关心速度和内存使用,您可能需要编写自己的SAX转换器。这是否足够容易取决于转换的复杂性 也就是说,3000个节点并不多,我曾经转换过更大的

我有大量XML文件(3000多个唯一节点),需要从一种格式转换为另一种格式。我主要关心的是速度和内存使用。除了使用StAX以编程方式解析输入XML并使用StAX创建目标XML之外,还有其他方法可以替代XSLT吗


我知道有一个STX项目,但我认为它没有得到维护。

Smooks可以帮助您。方便快捷

我发现在Java中对XML结构进行简单的编程操作非常有用。

如果您非常关心速度和内存使用,您可能需要编写自己的SAX转换器。这是否足够容易取决于转换的复杂性

也就是说,3000个节点并不多,我曾经转换过更大的文档。STX也运行良好。不维护并不一定意味着它不工作


最好尝试现有的解决方案,然后根据需要进行改进。

3000个节点并不“庞大”。至于效率,这是高效算法的结果,而不是编程语言的选择。已经证明,实现O(N^3)算法的汇编语言程序的执行速度比实现更高效算法的基本程序慢数千倍——甚至是N的中等值。定义确切的问题,然后人们就可以用XSLT提供高效的实现。你知道什么需要优化吗?引用克努特的话:“过早优化是万恶之源”@MaxToro感谢你的建议。@DimitreNovatchev感谢你的建议。我也知道克努斯所说的;-)。我只是想看看有没有我不知道的工具。例如萨克森的流媒体support@Pangea,在这种情况下,您需要编辑问题的标题,以更紧密地反映其真实含义。例如:“转换H U G E xml文档的最佳工具是什么?”。XML文档一般来说并不庞大,所以“XML到XML转换的XSLT替代品”这一标题非常容易引起误解。@DimitreNovatchev thx。我听了你的建议。