javax.xml.namespace
类 QName
java.lang.Object

javax.xml.namespace.QName
-
所有已实现的接口:
- Serializable
public class QNameextends Objectimplements Serializable
QName 表示 XML 规范中定义的限定名称:XML 模式第二部分:Datatypes specification、Namespaces in XML、Namespaces in XML 勘误表。
QName 的值包含名称空间 URI、本地部分和前缀。
QName 中包括前缀,以保留词汇信息(当在 XML 输入源中存在 时)。前缀不 用于 QName.equals(Object) 或计算 QName.hashCode()。仅 使用名称空间 URI 和本地部分定义相等性和哈希码。
如果没有指定名称空间 URI,则将其设置为 XMLConstants.NULL_NS_URI。如果没有指定前缀,则将其设置为 XMLConstants.DEFAULT_NS_PREFIX。
QName 是不可变的。
-
从以下版本开始:
- 1.5 另请参见:
- XML 模式第二部分:Datatypes specification, Namespaces in XML, Namespaces in XML 勘误表, 序列化表格
| 构造方法摘要 | |
|---|---|
QName(String localPart) 指定本地部分的 QName 构造方法。 | |
QName(String namespaceURI, String localPart) 指定名称空间 URI 和本地部分的 QName 构造方法。 | |
QName(String namespaceURI, String localPart, String prefix) 指定名称空间 URI、本地部分和前缀的 QName 构造方法。 | |
| 方法摘要 | |
|---|---|
boolean | equals(Object objectToTest) 测试此 QName 与另一个 Object 的相等性。 |
String | getLocalPart() 获取此 QName 的本地部分。 |
String | getNamespaceURI() 获取此 QName 的名称空间 URI。 |
String | getPrefix() 获取此 QName 的前缀。 |
int | hashCode() 生成此 QName 的哈希码。 |
String | toString() 此 QName 的 String 表示形式。 |
static QName | valueOf(String qNameAsString) 从解析格式化 String 中派生的 QName。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| 构造方法详细信息 |
|---|
QName
public QName(String namespaceURI, String localPart)
-
指定名称空间 URI 和本地部分的
QName构造方法。如果名称空间 URI 为
null,则将它设置为XMLConstants.NULL_NS_URI。此值表示非显式定义的名称空间,在 Namespaces in XML 规范中定义。此操作保持了与 QName 1.0 兼容的行为。显式提供XMLConstants.NULL_NS_URI值是首选的编码风格。如果本地部分为
null,则抛出IllegalArgumentException。允许 "" 的本地部分保持与 QName 1.0 的兼容行为。当使用此构造方法时,将前缀设置为
XMLConstants.DEFAULT_NS_PREFIX。名称空间 URI 不根据 URI 参考验证。没有按 Namespaces in XML 中的指定将本地部分作为 NCName 来验证。
-
参数:
-
namespaceURI-QName的名称空间 URI -
localPart-QName的本地部分
抛出:
-
IllegalArgumentException- 当localPart为null时
另请参见:
-
QName(String namespaceURI, String localPart, String prefix)
-
QName
public QName(String namespaceURI, String localPart, String prefix)
-
指定名称空间 URI、本地部分和前缀的
QName构造方法。如果名称空间 URI 为
null,则将它设置为XMLConstants.NULL_NS_URI。此值表示非显式定义的名称空间,在 Namespaces in XML 规范中定义。此操作保持了与 QName 1.0 兼容的行为。显式提供XMLConstants.NULL_NS_URI值是首选的编码风格。如果本地部分为
null,则抛出IllegalArgumentException。允许 "" 的本地部分保持与 QName 1.0 的兼容行为。如果前缀为
null,则抛出IllegalArgumentException。使用XMLConstants.DEFAULT_NS_PREFIX显式指示不存在任何前缀或前缀是不相关的。名称空间 URI 不根据 URI 参考验证。没有按 Namespaces in XML 中的指定将本地部分和前缀作为 NCName 来验证。
-
参数:
-
namespaceURI-QName的名称空间 URI -
localPart-QName的本地部分 -
prefix-QName的前缀
抛出:
-
IllegalArgumentException- 当localPart或prefix为null时
-
QName
public QName(String localPart)
-
指定本地部分的
QName构造方法。如果本地部分为
null,则抛出IllegalArgumentException。允许 "" 的本地部分保持与 QName 1.0 的兼容行为。使用此构造方法时,将名称空间 URI 设置为
XMLConstants.NULL_NS_URI,并将前缀设置为XMLConstants.DEFAULT_NS_PREFIX。在 XML 上下文中,所有元素和属性名称都存在于名称空间的上下文中。在构造
QName的过程中,使其显式存在有助于避免诊断 XML 有效性错误的难度。优先使用构造方法QName(String namespaceURI, String localPart)和QName(String namespaceURI, String localPart, String prefix)。没有按 Namespaces in XML 中的指定将本地部分作为 NCName 来验证。
-
参数:
-
localPart-QName的本地部分
抛出:
-
IllegalArgumentException- 当localPart为null时
另请参见:
-
QName(String namespaceURI, String localPart),QName(String namespaceURI, String localPart, String prefix)
-
| 方法详细信息 |
|---|
getNamespaceURI
public String getNamespaceURI()
-
获取此
QName的名称空间 URI。 -
-
返回:
-
此
QName的名称空间 URI
-
此
getLocalPart
public String getLocalPart()
-
获取此
QName的本地部分。 -
-
返回:
-
此
QName的本地部分
-
此
getPrefix
public String getPrefix()
-
获取此
QName的前缀。分配给
QName的前缀在其他上下文中可能无 效。例如,可以在解析文档的上下文中为QName分配一个前缀,但是,该前缀可能在其他文档的上下文中无效。 -
-
返回:
-
此
QName的前缀
-
此
equals
public final boolean equals(Object objectToTest)
-
测试此
QName与另一个Object的相等性。如果要测试的
Object不是QName,或为null,那么此方法返回false。当且仅当名称空间 URI 和本地部分相等时,才认为两个
QName相等。此方法使用String.equals()检查名称空间 URI 和本地部分的相等性。前缀不能 用于确定相等性。此方法满足
Object.equals(Object)的常规协定。 -
-
参数:
-
objectToTest- 要测试与此QName相等性的Object
返回:
-
如果给定的
Object等于此QName,则返回true,否则返回false
另请参见:
-
Object.hashCode(),Hashtable
-
hashCode
public final int hashCode()
-
生成此
QName的哈希码。使用
QName的名称空间 URI 和本地部分计算哈希码。前缀不能 用于计算哈希码。此方法满足
Object.hashCode()的常规协定。 -
-
返回:
-
此
QNameObject的哈希码
另请参见:
-
Object.equals(java.lang.Object),Hashtable
-
此
toString
public String toString()
-
此
QName的String表示形式。James Clark 定义了将
QName表示为String的公认方法。虽然这不是标准 规范,但其使用很频繁,例如Transformer.setParameter(String name, Object value)。此实现将QName表示为:"{" + Namespace URI + "}" + 本地部分。如果名称空间 URI.equals(XMLConstants.NULL_NS_URI),则仅返回本地部分。此方法适用于调试或记录人为消耗。注:前缀值不能 作为
String表示形式的一部分返回。此方法满足
Object.toString()的常规协定。 -
-
返回:
-
此
QName的String表示形式
-
此
valueOf
public static QName valueOf(String qNameAsString)
-
从解析格式化
String中派生的QName。如果
String为null,或者不符合QName.toString()格式,则抛出IllegalArgumentException。String必须 是QName.toString()返回的格式。James Clark 定义了将
QName表示为String的公认方法。虽然这不是标准 规范,但其使用很频繁,例如Transformer.setParameter(String name, Object value)。此实现将String解析为以下格式:"{" + Namespace URI + "}" + 本地部分。如果名称空间 URI.equals(XMLConstants.NULL_NS_URI),则仅提供本地部分。不能 用
String表示前缀值,并将它设置为XMLConstants.DEFAULT_NS_PREFIX。此方法不能完全验证生成的
QName。名称空间 URI 不根据 URI 参考验证。没有按 Namespaces in XML 中的指定将本地部分作为 NCName 来验证。
-
-
参数:
-
qNameAsString-QName的String表示形式
返回:
-
与给定
String对应的QName
抛出:
-
IllegalArgumentException- 当qNameAsString为null或出错时
-
本文介绍了Java中javax.xml.namespace包下的QName类,详细解释了QName的构造方法、属性及方法,如获取名称空间URI、本地部分和前缀,以及如何进行QName对象之间的比较。
2320

被折叠的 条评论
为什么被折叠?



