【问题标题】:Load DTD into SAX Parser in java在 Java 中将 DTD 加载到 SAX 解析器中
【发布时间】:2023-03-13 22:23:01
【问题描述】:

我需要解析一堆传入的 xml 文档,它们都有相同的 DTD。我不希望 Sax Parser 每次必须解析新的 xml 文档时都加载 DTD。无论如何我可以将 DTD 加载到解析器中并在后续的解析调用中重用它吗?

【问题讨论】:

    标签: java xml


    【解决方案1】:

    我不确定您是否担心每次加载文档时从远程 URL 加载 DTD。

    如果是,那么您可以定义 EntityResolver 并指定 DTD 的本地副本。这将在 SAX 解析器每次解析文档时提供对 DTD 的 本地 实例的引用。

    不幸的是,我不相信有预加载/预解析 DTD 的方法。

    【讨论】:

    • 我想完全消除加载任何冗余 DTD 相关对象所涉及的任何开销。我将快速连续收到许多 xml 文档,需要快速处理它们。
    • 我认为唯一可以消除的开销是远程加载。
    猜你喜欢
    • 1970-01-01
    • 2017-08-19
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    相关资源
    最近更新 更多