XML 简单应用程序接口 (Simple API for XML, SAX) 是一种用于 XML 的串行访问协议。SAX 是事件驱动的 API,您可以在 Java 程序中使用它,方法是向 SAX 解析器注册文档处理程序。注册以后,每当解析器遇到新的 XML 标记、错误或其他特殊情况时,都会调用您的回调方法。
生成 SAX 文档处理程序的 IDE 方法具有以下好处:
它将生成解析器的分发逻辑与应用程序逻辑完全分离。
它将数据类型解析逻辑与应用程序处理完全分离。可以重用数据类型解析库。
在您更新 DTD 时,简化了代码更新。在重新生成解析器和处理程序时,不会丢失以前的定制设置。
结合使用 SAX 和 IDE
通常将 SAX 协议与 Servlet 和面向网络的程序一起使用。SAX 是当前可用于处理 XML 文档的速度最快且内存使用最小的机制。如果正在编写的应用程序需要显示 XML 文档,并且还可能需要对 XML 文档进行修改,很多人愿意优先选用 DOM 机制。
在生成能够读取 XML 文件的 SAX 文档处理程序之前,请首先为要处理的文件定义 DTD。IDE 使用 DTD 生成以下文件:
处理程序接口。此接口包含生成的解析器在解析 XML 文档时调用的方法。可以指定 IDE 为其生成处理程序方法的元素。IDE 将为内容元素生成一个 handle_elementName 方法,并为容器元素生成一对方法(start_elementName 和 end_elementName)。