【发布时间】:2012-05-25 15:21:37
【问题描述】:
我有一个解析大型 XML 的数据导入工具(它使用 SAX 解析器,但适应是我的问题中最少的一个)。发生故障、新部署、系统重启,我不想完全重新开始,所以我需要不时保存解析器状态(如果需要,我们可以将其称为 XML 游标)。
是否有任何解析器能够保存它们的状态并恢复它们(显然我必须在恢复时搜索文件)?
我还没有找到这样的解析器,所以我对此表示怀疑,所以这是我的第二个问题:您对我应该如何开始实施它有什么建议吗?采用 SAX 解析器实现并深入研究,或者我最好从头开始?
如果重要,我需要 xml 命名空间,但不需要模式/DTD 检查。
游标还可以用于预解析 xml 和分配工作以进行并行处理。
【问题讨论】:
-
发生故障?它不应该以您需要再次解析所有 xml 的方式发生,现在应该吗?
-
也许不是失败。我们称之为系统重启。部署新版本的应用程序。
-
你能指定什么样的失败? IO 故障? XML 解析失败?
-
这种故障是否与崩溃和应用程序退出一样?,所以当您重新运行文件解析器时,您希望在最后一个成功解析的节点的下一个兄弟节点上恢复?
-
这不仅仅是失败(见上文,而且我已经编辑了问题)。我不介意重新解析几百个条目,但不是全部。
标签: java xml xml-parsing