Package javax.xml.transform.sax
SAXSource
类允许设置用于拉取解析事件的XMLReader
,以及可用于指定SAX源的InputSource
。
SAXResult
类允许设置一个ContentHandler
作为来自转换的SAX2事件的接收器。
SAXTransformerFactory
扩展了TransformerFactory
,提供了用于创建TemplatesHandler
、TransformerHandler
和XMLReader
实例的工厂方法。
要获取一个SAXTransformerFactory
,调用者必须将从TransformerFactory
的TransformerFactory.newInstance()
返回的实例强制转换。
TransformerHandler
接口允许从SAX2解析事件创建转换,这是一种“推”模型,而不是通常发生在转换中的“拉”模型。正常的解析事件通过ContentHandler
接口接收,词法事件(如startCDATA和endCDATA)通过LexicalHandler
接口接收,以及信号启用或禁用输出转义的事件通过ContentHandler.processingInstruction(java.lang.String, java.lang.String)
接收,其中目标参数为Result.PI_DISABLE_OUTPUT_ESCAPING
和Result.PI_ENABLE_OUTPUT_ESCAPING
。如果需要在Transformer处理程序上设置参数、输出属性或其他特性,则需要从TransformerHandler.getTransformer()
获取一个Transformer
引用,并从该引用调用方法。
TemplatesHandler
接口允许从SAX2解析事件创建Templates
对象。一旦ContentHandler
事件完成,可以从TemplatesHandler.getTemplates()
获取Templates对象。请注意,通常应调用TemplatesHandler.setSystemId(java.lang.String)
以建立一个基本系统ID,从中可以解析相对URL。
SAXTransformerFactory.newXMLFilter(javax.xml.transform.Source)
方法允许创建一个XMLFilter
,它封装了“拉”转换的SAX2概念。生成的XMLFilters
可以链接在一起,以便一系列转换可以发生,其中一个的输出成为另一个的输入。
- 自版本:
- 1.5
-
ClassDescription作为转换结果的持有者。作为SAX样式源的持有者。该类扩展了TransformerFactory,提供了SAX特定的工厂方法。一个SAX ContentHandler,可用于将SAX解析事件(解析转换指令)处理为Templates对象。一个TransformerHandler监听SAX ContentHandler解析事件并将其转换为Result。