以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  S A X 的结构-------理解SAX的基础  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=9579)


--  作者:卷积内核
--  发布时间:8/26/2004 3:44:00 PM

--  S A X 的结构-------理解SAX的基础

S A X是由许多Java 接口构建而成的。了解接口和类之间的区别是很重要的:
• 接口表示它们是什么方法和它们需要的参数种类。接口完全是一个规范;当方法被调用时
它并不提供任何执行代码。然而接口是具体的规范,而不仅仅是文件片段, J a v a编译器保
证需要实现接口的类正确地操作。
• 类提供可执行的方法,包括可以被其他类中代码调用的公共方法。
• 类可以实现一个或多个接口。很多情况下S A X指定的一些接口理论上可以被各不相同的类
实现,但实际上经常是和某单个类结合实现的。为了实现一个接口,类必须提供接口中定
义的每个方法的代码。
• 几个类可以实现同一个接口。当然这正是S A X需要重点做的—有许多S A X解析器接口的
实现可以选择,因为它们实现相同的接口,应用程序无须关心使用的是哪一个实现。
一些S A X接口是解析器中的类实现的,而有些S A X接口必须由应用程序中的类实现。S A X
自身提供了一些类,尽管可以不使用它们。有些类是解析器必须提供的(如错误处理类),但是
应用程序可以根据需要忽略它们。
1. 基本结构
• 应用程序是主程序:你编写的用来开始整个处理过程的代码。
• 文档处理器是你编写的用来处理文档内容的代码。

应用程序
解析器
文档处理器

• 解析器是符合S A X标准的X M L解析器。
应用程序的工作就是创建一个解析器(更准确地说是初始化一个实现o rg . x m l . s a x . P a r s e r接口
的类);创建一个文档处理器(通过初始化一个实现o rg . x m l . s a x . D o c u m e n t H a n d l e r接口的类);
告知解析器使用哪个文档处理器(通过调用解析器的setDocumentHandler( )方法);告知解析器
开始处理一个特定的输入文档(通过调用解析器的parse( )方法)。
解析器的作用是通报文档处理器它在文档中找到的所有感兴趣的内容,例如元素的起始和
结束标签。
文档处理器的作用是处理这些通报以获取应用程序需要的所有内容


(不好意思,图片贴不上来


--  作者:tatezhou
--  发布时间:6/4/2005 11:52:00 AM

--  
讲了这么多,好像和SAX没有关系吧。
--  作者:pppoe
--  发布时间:6/16/2005 9:42:00 AM

--  
什么阿.
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms