JavaTM 2 Platform
Standard Ed. 6

javax.xml.xpath
介面 XPathExpression


public interface XPathExpression

XPathExpression 提供了對編譯後的 XPath 表達式的存取。

XPath 表達式的計算。
上下文 如果在沒有上下文項的情況下請求計算表達式,則將使用一個空文檔節點作為上下文。為計算 XPath 表達式,應將 DocumentFragment 視為 Document 節點。
變數 如果表達式包含變數參考,則其值將通過 XPathVariableResolver 找到。如果變數解析器未定義或解析器對變數返回 null,則引發 XPathExpressionException。在任何單個計算過程中,變數的值必須是不可變的。

函數 如果表達式包含函數參考,則函數將通過 XPathFunctionResolver 找到。如果函數解析器未定義或解析器為函數返回 null,則引發 XPathExpressionException

QNames 表達式中的 QNames 根據 XPath 名稱空間上下文來解析。
結果 將計算表達式的結果轉換為所需的返回型別的實例。XPathConstants 中定義了有效的返回型別。轉換到返回型別的過程遵守 XPath 轉換規則。

XPath 表達式不是執行緒安全的,也不能重入。換句話說,應用程序負責確保在任意給定時刻不能有多個執行緒使用一個 XPathExpression 物件,且當調用 evaluate 方法時,應用程序不能以遞歸方式調用 evaluate 方法。

從以下版本開始:
1.5
另請參見:
XML Path Language (XPath) Version 1.0, Expressions

方法摘要
 String evaluate(InputSource source)
          計算指定 InputSource 上下文中編譯後的 XPath 表達式並以 String 形式返回結果。
 Object evaluate(InputSource source, QName returnType)
          計算指定 InputSource 上下文中編譯後的 XPath 表達式並返回指定型別的結果。
 String evaluate(Object item)
          計算指定上下文中編譯後的 XPath 表達式並以 String 形式返回結果。
 Object evaluate(Object item, QName returnType)
          計算指定上下文中的 XPath 表達式並返回指定型別的結果。
 

方法詳細資訊

evaluate

Object evaluate(Object item,
                QName returnType)
                throws XPathExpressionException

計算指定上下文中的 XPath 表達式並返回指定型別的結果。

有關上下文項計算、變數、函數和 QName 解析,以及返回型別轉換,請參閱 XPath 表達式的計算

如果 returnType 不是 XPathConstants 中定義的型別之一,則拋出 IllegalArgumentException

如果為 item 提供了 null 值,則將使用一個空文檔作為上下文。如果 returnTypenull,則拋出 NullPointerException

參數:
item - 開始上下文(例如節點)。
returnType - 所需的返回型別。
返回:
計算表達式並將計算結果轉換為 returnType 所得到的結果 Object
拋出:
XPathExpressionException - 如果不能計算表達式。
IllegalArgumentException - 如果 returnType 不是 XPathConstants 中定義的型別之一。
NullPointerException - 如果 returnTypenull

evaluate

String evaluate(Object item)
                throws XPathExpressionException

計算指定上下文中編譯後的 XPath 表達式並以 String 形式返回結果。

此方法調用 evaluate(Object item, QName returnType),其中 returnTypeXPathConstants.STRING

有關上下文項計算、變數、函數和 QName 解析,以及返回型別轉換,請參閱 XPath 表達式的計算

如果為 itemnull 值,則將使用一個空文檔作為上下文。

參數:
item - 開始上下文(例如節點)。
返回:
計算表達式並將計算結果轉換為 String 所得到的結果 String
拋出:
XPathExpressionException - 如果不能計算表達式。

evaluate

Object evaluate(InputSource source,
                QName returnType)
                throws XPathExpressionException

計算指定 InputSource 上下文中編譯後的 XPath 表達式並返回指定型別的結果。

此方法建構 InputSource 的資料模型,然後對所得文檔物件調用 evaluate(Object item, QName returnType)

有關上下文項計算、變數、函數和 QName 解析,以及返回型別轉換,請參閱 XPath 表達式的計算

如果 returnType 不是 XPathConstants 中定義的型別之一,則拋出 IllegalArgumentException

如果 sourcereturnTypenull,則拋出 NullPointerException

參數:
source - 要對其計算的文檔的 InputSource
returnType - 所需的返回型別。
返回:
計算表達式並將計算結果轉換為 returnType 所得到的結果 Object
拋出:
XPathExpressionException - 如果不能計算表達式。
IllegalArgumentException - 如果 returnType 不是 XPathConstants 中定義的型別之一。
NullPointerException - 如果 sourcereturnTypenull

evaluate

String evaluate(InputSource source)
                throws XPathExpressionException

計算指定 InputSource 上下文中編譯後的 XPath 表達式並以 String 形式返回結果。

此方法調用 evaluate(InputSource source, QName returnType),其中 returnTypeXPathConstants.STRING

有關上下文項計算、變數、函數和 QName 解析,以及返回型別轉換,請參閱 XPath 表達式的計算

如果 sourcenull,則拋出 NullPointerException

參數:
source - 要對其計算的文檔的 InputSource
返回:
計算表達式並將計算結果轉換為 String 所得到的結果 String
拋出:
XPathExpressionException - 如果不能計算表達式。
NullPointerException - 如果 sourcenull

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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