所有类


org.xml.sax.helpers
类 DefaultHandler

java.lang.Object
  继承者 org.xml.sax.helpers.DefaultHandler
所有已实现的接口:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler
直接已知子类:
DefaultHandler2

public class DefaultHandler
   
   
   
   
     
     
extends Object
implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler

SAX2 事件处理程序的默认基类。

此模块(包括源代码和文档)位于公共域中,对该模块不提供担保有关更多信息,请参阅http://www.saxproject.org

此类可用作 SAX2 应用程序的有用基类:它提供四个核心 SAX2 处理程序类中的所有回调的默认实现:

应用程序编写者可以在他们仅需实现部分接口时扩展此类;当应用程序尚未提供其自己的处理程序时解析器编写者可通过实例化此类来提供默认的处理程序。

此类替换不推荐使用的 SAX1 HandlerBase 类。

从以下版本开始:
SAX 2.0
另请参见:
EntityResolver, DTDHandler, ContentHandler, ErrorHandler

构造方法摘要
DefaultHandler()
           
 
方法摘要
 voidcharacters(char[] ch, int start, int length)
          接收元素中字符数据的通知。
 voidendDocument()
          接收文档结束的通知。
 voidendElement(String uri, String localName, String qName)
          接收元素结束的通知。
 voidendPrefixMapping(String prefix)
          接收名称空间映射结束的通知。
 voiderror(SAXParseException e)
          接收可恢复的解析器错误的通知。
 voidfatalError(SAXParseException e)
          报告严重的 XML 解析错误。
 voidignorableWhitespace(char[] ch, int start, int length)
          接收元素内容中可忽略空白的通知。
 voidnotationDecl(String name, String publicId, String systemId)
          接收注释声明的通知。
 voidprocessingInstruction(String target, String data)
          接收处理指令的通知。
 InputSourceresolveEntity(String publicId, String systemId)
          解析外部实体。
 voidsetDocumentLocator(Locator locator)
          接收文档事件的 Locator 对象。
 voidskippedEntity(String name)
          接收跳过的实体的通知。
 voidstartDocument()
          接收文档开始的通知。
 voidstartElement(String uri, String localName, String qName, Attributes attributes)
          接收元素开始的通知。
 voidstartPrefixMapping(String prefix, String uri)
          接收名称空间映射开始的通知。
 voidunparsedEntityDecl(String name, String publicId, String systemId, String notationName)
          接收未解析实体声明的通知。
 voidwarning(SAXParseException e)
          接收解析器警告的通知。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

DefaultHandler

public DefaultHandler()
方法详细信息

resolveEntity

public InputSource resolveEntity(String publicId,
                                 String systemId)
                          throws IOException,
                                 SAXException
解析外部实体。

将始终返回 null,因此解析器将使用 XML 文档中提供的系统标识符。此方法实现 SAX 默认的行为:应用程序编写者可以在子类中重写它以便进行诸如目录查找或 URI 重定向之类的特定转换。

指定者:
接口 EntityResolver 中的 resolveEntity
参数:
publicId - 公共标识符,如果没有可用的,则为 null。
systemId - 在 XML 文档中提供的系统标识符。
返回:
新的输入源,或返回 null,以要求默认的行为。
抛出:
IOException - 如果在设置新的输入源时发生错误。
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
EntityResolver.resolveEntity(java.lang.String, java.lang.String)

notationDecl

public void notationDecl(String name,
                         String publicId,
                         String systemId)
                  throws SAXException
接收注释声明的通知。

默认情况下,不执行任何操作。如果应用程序编写者希望跟踪在文档中声明的注释,则可以在子类中重写此方法。

指定者:
接口 DTDHandler 中的 notationDecl
参数:
name - 注释名称。
publicId - 注释公共标识符,如果没有可使用的则为 null。
systemId - 注释系统标识符。
抛出:
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)

unparsedEntityDecl

public void unparsedEntityDecl(String name,
                               String publicId,
                               String systemId,
                               String notationName)
                        throws SAXException
接收未解析实体声明的通知。

默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便跟踪在文档中声明的未解析实体。

指定者:
接口 DTDHandler 中的 unparsedEntityDecl
参数:
name - 实体名称。
publicId - 实体公共标识符,如果不可用,则为 null。
systemId - 实体系统标识符。
notationName - 相关联的注释的名称。
抛出:
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)

setDocumentLocator

public void setDocumentLocator(Locator locator)
接收文档事件的 Locator 对象。

默认情况下,不执行任何操作。如果应用程序编写者希望存储定位器以用于其他的文档事件,则可以在子类中重写此方法。

指定者:
接口 ContentHandler 中的 setDocumentLocator
参数:
locator - 用于所有 SAX 文档事件的定位器。
另请参见:
ContentHandler.setDocumentLocator(org.xml.sax.Locator), Locator

startDocument

public void startDocument()
                   throws SAXException
接收文档开始的通知。

默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在文档的开始采取特定的措施(如分配树的根节点或创建输出文件)。

指定者:
接口 ContentHandler 中的 startDocument
抛出:
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
ContentHandler.startDocument()

endDocument

public void endDocument()
                 throws SAXException
接收文档结束的通知。

默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在文档的结束处采取特定的操作(如,结束树或关闭输出文件)。

指定者:
接口 ContentHandler 中的 endDocument
抛出:
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
ContentHandler.endDocument()

startPrefixMapping

public void startPrefixMapping(String prefix,
                               String uri)
                        throws SAXException
接收名称空间映射开始的通知。

默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在每个名称空间前缀范围的开始处采取特定的操作(如存储前缀映射)。

指定者:
接口 ContentHandler 中的 startPrefixMapping
参数:
prefix - 正在声明的名称空间前缀。
uri - 映射到前缀的名称空间 URI。
抛出:
SAXException - 任何 SAX 异常,可能包装另外的异常。
另请参见:
ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)