我有一个要解决的XML性能问题。
具体来说,我有相同的中小型XML文件,该文件已被解析了数百次。
该功能绑定到StAX XML事件阅读器。无法克隆或复制其输出,重现所需功能的唯一方法是再次在XML文档上运行此XML事件读取器。
为了提高性能,我想将XML急切地读入StAX事件序列中,然后重播该事件序列,而不是每次都重新解析XML。
我认为问题在于实现:尽管这种想法在原则上是合理的,但是“事件”表示为针对具有大型API界面的XMLStreamReader的状态更改,而XMLStreamReader的大部分(但并非全部)与其“当前”事件。
这样的系统已经存在吗?
如果我必须自己构建它,那么确保正确性的最佳方法是什么?