public abstract class XMLEventFactory extends Object
StartElement
, EndElement
, ProcessingInstruction
, Comment
, Characters
, StartDocument
, EndDocument
, DTD
Modifier | Constructor and Description |
---|---|
protected |
XMLEventFactory() |
Modifier and Type | Method and Description |
---|---|
abstract Attribute |
createAttribute(QName name, String value)
创建一个新的属性
|
abstract Attribute |
createAttribute(String localName, String value)
创建一个新的属性
|
abstract Attribute |
createAttribute(String prefix, String namespaceURI, String localName, String value)
创建一个新的属性
|
abstract Characters |
createCData(String content)
创建一个Charata事件,CData标志设置为true
|
abstract Characters |
createCharacters(String content)
创建一个Characters事件,此方法不检查内容是否为空白。
|
abstract Comment |
createComment(String text)
创建评论
|
abstract DTD |
createDTD(String dtd)
创建文档类型定义事件此字符串包含与XML 1.0规范中的doctypedecl匹配的整个文档类型声明
|
abstract EndDocument |
createEndDocument()
创建一个EndDocument事件的新实例
|
abstract EndElement |
createEndElement(QName name, Iterator namespaces)
创建一个新的EndElement
|
abstract EndElement |
createEndElement(String prefix, String namespaceUri, String localName)
创建一个新的EndElement
|
abstract EndElement |
createEndElement(String prefix, String namespaceUri, String localName, Iterator namespaces)
创建一个新的EndElement
|
abstract EntityReference |
createEntityReference(String name, EntityDeclaration declaration)
创建EntityReference事件的新实例
|
abstract Characters |
createIgnorableSpace(String content)
创建一个可忽略的空间
|
abstract Namespace |
createNamespace(String namespaceURI)
创建一个新的默认命名空间
|
abstract Namespace |
createNamespace(String prefix, String namespaceUri)
创建一个新的命名空间
|
abstract ProcessingInstruction |
createProcessingInstruction(String target, String data)
创建处理指令
|
abstract Characters |
createSpace(String content)
创建一个字符事件,将isSpace标志设置为true
|
abstract StartDocument |
createStartDocument()
创建一个StartDocument事件的新实例
|
abstract StartDocument |
createStartDocument(String encoding)
创建一个StartDocument事件的新实例
|
abstract StartDocument |
createStartDocument(String encoding, String version)
创建一个StartDocument事件的新实例
|
abstract StartDocument |
createStartDocument(String encoding, String version, boolean standalone)
创建一个StartDocument事件的新实例
|
abstract StartElement |
createStartElement(QName name, Iterator attributes, Iterator namespaces)
创建一个新的StartElement。
|
abstract StartElement |
createStartElement(String prefix, String namespaceUri, String localName)
创建一个新的StartElement。
|
abstract StartElement |
createStartElement(String prefix, String namespaceUri, String localName, Iterator attributes, Iterator namespaces)
创建一个新的StartElement。
|
abstract StartElement |
createStartElement(String prefix, String namespaceUri, String localName, Iterator attributes, Iterator namespaces, NamespaceContext context)
创建一个新的StartElement。
|
static XMLEventFactory |
newFactory()
创建一个新的工厂实例。
|
static XMLEventFactory |
newFactory(String factoryId, ClassLoader classLoader)
创建一个新的工厂实例。
|
static XMLEventFactory |
newInstance()
以与
newFactory() 方法完全相同的方式创建工厂的新实例。
|
static XMLEventFactory |
newInstance(String factoryId, ClassLoader classLoader)
已弃用
该方法已被弃用,以保持API的一致性。
所有newInstance方法已被替换为相应的newFactory方法。
替换
newFactory(java.lang.String, java.lang.ClassLoader) 方法定义行为没有变化。
|
abstract void |
setLocation(Location location)
该方法允许在由此工厂创建的每个事件上设置位置。
|
public static XMLEventFactory newInstance() throws FactoryConfigurationError
newFactory()
方法完全相同的方式创建工厂的新实例。
FactoryConfigurationError
- 如果此工厂的实例无法加载
public static XMLEventFactory newFactory() throws FactoryConfigurationError
这个静态方法创建一个新的工厂实例。 此方法使用以下有序查找过程来确定要加载的XMLEventFactory实现类:
ServiceLoader
类定义的服务提供商加载工具尝试使用default loading mechanism定位并加载服务的实现 :服务提供商加载工具将使用current thread's context class loader尝试加载服务。 如果上下文类加载器为null, 那么将使用system class loader 。 一旦应用程序获得了对XMLEventFactory的引用,它可以使用工厂来配置和获取流实例。
请注意,这是一种替代不推荐使用的newInstance()方法的新方法。 相对于不推荐使用的方法,此替换方法没有定义行为更改。
FactoryConfigurationError
-在以下情况下service configuration error或者如果实现不可用或不能被实例化。
public static XMLEventFactory newInstance(String factoryId, ClassLoader classLoader) throws FactoryConfigurationError
newFactory(java.lang.String, java.lang.ClassLoader)
方法定义行为没有变化。
factoryId
- 要查找的工厂名称,与属性名称相同
classLoader
- classLoader使用
FactoryConfigurationError
- 如果此工厂的实例无法加载
public static XMLEventFactory newFactory(String factoryId, ClassLoader classLoader) throws FactoryConfigurationError
此方法使用以下有序查找过程来确定要加载的XMLEventFactory实现类:
factoryId
。 factoryId
。 factoryId
是“javax.xml.stream.XMLEventFactory”,请使用由ServiceLoader
类定义的服务提供程序加载工具来尝试使用指定的ClassLoader查找和加载服务的ClassLoader
。 如果classLoader
为空,则将适用default loading mechanism :即,服务提供商加载工具将使用current thread's context class loader尝试加载服务。 如果上下文类加载器为null, 那么将使用system class loader 。 FactoryConfigurationError
。 请注意,这是一种替代已弃用的newInstance(String factoryId, ClassLoader classLoader)
方法的新方法。 相对于不推荐使用的方法,此替换方法没有定义行为更改。
factoryId
- 找到工厂的名称,与属性名称相同
classLoader
- classLoader使用
FactoryConfigurationError
-在以下情况下service configuration error或者如果实现不可用或不能被实例化。
public abstract void setLocation(Location location)
location
- 创建每个事件上设置的位置
public abstract Attribute createAttribute(String prefix, String namespaceURI, String localName, String value)
prefix
- 此属性的前缀可能不为空
namespaceURI
- 属性值设置为此值,可能不为空
localName
- 属性的XML名称的本地名称,localName不能为空
value
- 要设置的属性值,可能不为空
public abstract Attribute createAttribute(String localName, String value)
localName
- 属性的XML名称的本地名称,localName不能为空
value
- 要设置的属性值,可能不为null
public abstract Attribute createAttribute(QName name, String value)
name
- 属性的限定名称,可能不为空
value
- 要设置的属性值,可能不为空
public abstract Namespace createNamespace(String namespaceURI)
namespaceURI
- 默认名称空间uri
public abstract Namespace createNamespace(String prefix, String namespaceUri)
prefix
- 这个命名空间的前缀可能不为空
namespaceUri
- 属性值设置为此值,可能不为空
public abstract StartElement createStartElement(QName name, Iterator attributes, Iterator namespaces)
name
- 属性的限定名称,可能不为空
attributes
- 实现属性添加到新的StartElement的可选的无序对象组可以是空的
namespaces
- 实现命名空间以添加到新的StartElement的可选的无序对象组可以为空
public abstract StartElement createStartElement(String prefix, String namespaceUri, String localName)
namespaceUri
- 新的StartElement的QName的uri
localName
- 新StartElement的QName的本地名称
prefix
- 新的StartElement的QName的前缀
public abstract StartElement createStartElement(String prefix, String namespaceUri, String localName, Iterator attributes, Iterator namespaces)
namespaceUri
- 新的StartElement的QName的uri
localName
- 新StartElement的QName的本地名称
prefix
- 新的StartElement的QName的前缀
attributes
- 一个无序的对象集,实现添加到新的StartElement的Attribute
namespaces
- 一个无序的对象集,它们实现命名空间来添加到新的StartElement
public abstract StartElement createStartElement(String prefix, String namespaceUri, String localName, Iterator attributes, Iterator namespaces, NamespaceContext context)
namespaceUri
- 新的StartElement的QName的uri
localName
- 新StartElement的QName的本地名称
prefix
- 新的StartElement的QName的前缀
attributes
- 实现属性添加到新的StartElement的无序对象组可能为null
namespaces
- 实现命名空间添加到新的StartElement的无序对象组可能为null
context
- 此元素的命名空间上下文
public abstract EndElement createEndElement(QName name, Iterator namespaces)
name
- EndElement的限定名称
namespaces
- 实现名称空间超出范围的可选无序对象组可能为空
public abstract EndElement createEndElement(String prefix, String namespaceUri, String localName)
namespaceUri
- 新的StartElement的QName的uri
localName
- 新的StartElement的QName的本地名称
prefix
- 新的StartElement的QName的前缀
public abstract EndElement createEndElement(String prefix, String namespaceUri, String localName, Iterator namespaces)
namespaceUri
- 新的StartElement的QName的uri
localName
- 新StartElement的QName的本地名称
prefix
- 新的StartElement的QName的前缀
namespaces
- 实现名称空间超出范围的无序对象组可能为null
public abstract Characters createCharacters(String content)
content
- 要创建的字符串
public abstract Characters createCData(String content)
content
- 要创建的字符串
public abstract Characters createSpace(String content)
content
- 要创建的空间的内容
public abstract Characters createIgnorableSpace(String content)
content
- 要创建的空间
public abstract StartDocument createStartDocument()
public abstract StartDocument createStartDocument(String encoding, String version, boolean standalone)
encoding
- 编码风格
version
- XML版本
standalone
- 独立的状态可能设置为“true”或“false”
public abstract StartDocument createStartDocument(String encoding, String version)
encoding
- 编码风格
version
- XML版本
public abstract StartDocument createStartDocument(String encoding)
encoding
- 编码风格
public abstract EndDocument createEndDocument()
public abstract EntityReference createEntityReference(String name, EntityDeclaration declaration)
name
- 参考的名称
declaration
- 事件声明
public abstract ProcessingInstruction createProcessingInstruction(String target, String data)
target
- 处理
target
的目标
data
- 处理
data
的文本