JavaTM 2 Platform
Standard Ed. 6

javax.xml.bind
類別 JAXBElement<T>

java.lang.Object
  繼承者 javax.xml.bind.JAXBElement<T>
所有已實作的介面:
Serializable

public class JAXBElement<T>
extends Object
implements Serializable

Xml 元素的 JAXB 表示形式。

此類別表示關於 Xml 元素的資訊,這些資訊包括網要中的元素宣告,以及具有以下屬性的 xml 文檔中的元素實例值,如下所示:

declaredTypescope 屬性是 xml 型別定義的 JAXB 類別綁定。

Scope 可以是 JAXBElement.GlobalScope,也可以是表示包含網要元素宣告的複雜型別定義的 Java 類別。

這裡有一個屬性約束,即如果 valuenull,則 nil 一定為 true。反之則不然,以支持表示包含屬性的 nil 元素。如果 nil 為 true,則 value 可能為非 null,這樣它可以保存與 nil 元素關聯的屬性值。

從以下版本開始:
JAXB 2.0
另請參見:
序列化表格

巢狀類別摘要
static class JAXBElement.GlobalScope
          為 xml 元素指定全體作用域。
 
欄位摘要
protected  Class<T> declaredType
          xml 元素宣告型別的 Java 資料型別綁定。
protected  QName name
          xml 元素標記名稱。
protected  boolean nil
          如果 xml 元素實例具有 xsi:nil="true" 屬性,則 nil 為 true。
protected  Class scope
          表示此 xml 元素實例的 xml 元素宣告的作用域。
protected  T value
          xml 元素值。
 
建構子摘要
JAXBElement(QName name, Class<T> declaredType, Class scope, T value)
          建構一個 xml 元素實例。
JAXBElement(QName name, Class<T> declaredType, T value)
          建構一個 xml 元素實例。
 
方法摘要
 Class<T> getDeclaredType()
          返回 xml 元素宣告的型別屬性的 Java 綁定。
 QName getName()
          返回 xml 元素標記名稱。
 Class getScope()
          返回 xml 元素宣告的作用域。
 T getValue()
          返回此元素的內容網要和屬性值。
 boolean isGlobalScope()
          如果此 xml 元素宣告是全體性的,則返回 true。
 boolean isNil()
          如果此元素實例內容網要為 nil,則返回 true
 boolean isTypeSubstituted()
          如果此 xml 元素實例的值的型別與 xml 元素宣告的宣告型別不同,則返回 true。
 void setNil(boolean value)
          設置此屬性是否包含 nil 內容。
 void setValue(T t)
          設置此 xml 元素的內容網要和屬性。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

name

protected final QName name
xml 元素標記名稱。


declaredType

protected final Class<T> declaredType
xml 元素宣告型別的 Java 資料型別綁定。


scope

protected final Class scope
表示此 xml 元素實例的 xml 元素宣告的作用域。可以是以下值之一:全體 xml 元素宣告的 JAXBElement.GlobalScope。局部元素宣告有一個被設置為包含 xml 元素宣告的複雜型別定義的 Java 類別表示形式的作用域。


value

protected T value
xml 元素值。表示 xml 元素實例的內容網要和屬性。


nil

protected boolean nil
如果 xml 元素實例具有 xsi:nil="true" 屬性,則 nil 為 true。

建構子詳細資訊

JAXBElement

public JAXBElement(QName name,
                   Class<T> declaredType,
                   Class scope,
                   T value)

建構一個 xml 元素實例。

參數:
name - xml 元素標記名稱的 Java 綁定
declaredType - xml 元素宣告型別的 Java 綁定
scope - xml 元素宣告作用域的 Java 綁定。傳遞 null 與傳遞 GlobalScope.class 相同
value - 表示 xml 元素值的 Java 實例。
另請參見:
getScope(), isTypeSubstituted()

JAXBElement

public JAXBElement(QName name,
                   Class<T> declaredType,
                   T value)
建構一個 xml 元素實例。這只是 new JAXBElement(name,declaredType,GlobalScope.class,value) 的一個便捷方法。

方法詳細資訊

getDeclaredType

public Class<T> getDeclaredType()
返回 xml 元素宣告的型別屬性的 Java 綁定。


getName

public QName getName()
返回 xml 元素標記名稱。


setValue

public void setValue(T t)

設置此 xml 元素的內容網要和屬性。

在將此屬性設置為 null 時,isNil() 一定為 true。在 isNil() 中描述了約束的詳細資訊。

另請參見:
isTypeSubstituted()

getValue

public T getValue()

返回此元素的內容網要和屬性值。

關於此值為 null 時的屬性約束的描述,請參見 isNil()


getScope

public Class getScope()
返回 xml 元素宣告的作用域。

返回:
如果此元素位於全體作用域中,則返回 GlobalScope.class
另請參見:
isGlobalScope()

isNil

public boolean isNil()

如果此元素實例內容網要為 nil,則返回 true

getValue() 為 null 時,此屬性總是返回 true。注意,反之則不然,當此屬性為 true 時,getValue() 可以包含非 null 屬性值。對於 nil xml 元素,包含屬性是有效的。


setNil

public void setNil(boolean value)

設置此屬性是否包含 nil 內容。

另請參見:
isNil()

isGlobalScope

public boolean isGlobalScope()
如果此 xml 元素宣告是全體性的,則返回 true。


isTypeSubstituted

public boolean isTypeSubstituted()
如果此 xml 元素實例的值的型別與 xml 元素宣告的宣告型別不同,則返回 true。


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only