Java XML API

Java XML API

Java XML教程 - Java XML APISAX API下面是关键的SAX API的摘要:类用法SAXParserFactory创建由系统属性javax.xml.parsers.SAXParserFactory确定的解析器的实例。SAXParserSAXParser接口定义了几个重载的parse()方法。SAXReaderSAXParser包装一个SAXReader,并从SAXParser的getXMLReader()方法返回。DefaultHandlerDefaultHandler实现了ContentHandler,ErrorHandler,DTDHandler,和EntityResolver接口。 通过使用DefaultHandler,我们可以只覆盖我们需要的那些。ContentHandler此接口定义回调方法,如startDocument,endDocument,startElement和endElement。 这些方法在识别XML标记时调用。它还定义了被调用的方法characters()当解析器遇到XML元素中的文本时。它定义被调用的processingInstruction()当解析器遇到内联处理指令时。ErrorHandler它使用error(),fatalError()和warning()方法来响应各种解析错误。 默认的错误处理程序只会抛出致命错误和的异常忽略验证错误。DTDHandler用于处理DTDEntityResolver它的resolveEntity()方法用于标识数据。我们通常实现大多数 ContentHandler 方法。为了提供更稳健的实现,我们可以从ErrorHandler实现方法。SAX包SAX解析器在下表中列出的软件包中定义。包描述org.xml.sax定义SAX接口。org.xml.sax.ext定义用于更高级SAX处理的SAX扩展。org.xml.sax.helpers定义SAX API的辅助类。javax.xml.parsers定义SAXParserFactory类,它返回SAXParser。DOM API javax.xml.parsers.DocumentBuilderFactory 类返回一个 DocumentBuilder 实例。我们使用 DocumentBuilder 实例来产生一个 Document 对象退出XML文档。构建器由系统属性 javax.xml.parsers.DocumentBuilderFactory 确定。DocumentBuilder 中的 newDocument()方法可以创建一个实现 org.w3c.dom.Document 接口的空Document。我们可以使用其中一个构建器的解析方法来创建一个 Document 从现有的XML文档。DOM包文档对象模型实现在中定义下表中列出的软件包。包描述org.w3c.dom定义XML文档的DOM编程接口。javax.xml.parsers定义DocumentBuilderFactory类和DocumentBuilder类。XSLT API TransformerFactory 创建一个 Transformer 对象。XSLT API在下表中显示的包中定义。包描述javax.xml.transform定义TransformerFactory和Transformer类。 我们可以从变换器对象调用transform()方法来进行变换。javax.xml.transform.dom用于从DOM创建输入和输出对象的类。javax.xml.transform.sax用于从SAX解析器创建输入对象和从SAX事件处理程序输出对象的类。javax.xml.transform.stream用于从I / O流创建输入对象和输出对象的类。StAX APIsStAX为开发人员提供了SAX和DOM解析器的替代方法。StAX可以用更少的内存进行高性能流过滤,处理和修改。StAX是用于流式XML处理的标准的双向拉解析器接口。StAX提供比SAX更简单的编程模型,并且比DOM更高的内存效率。StAX可以解析和修改XML流作为事件。StAX包StAX APIs在下表中显示的包中定义。包描述javax.xml.stream定义迭代XML文档元素的XMLStreamReader接口。 定义XMLStreamWriter接口,指定如何写入XML。javax.xml.transform.stax提供StAX特定的转换API。