JavaTM 2 Platform
Standard Ed. 6

javax.sql.rowset.serial
類別 SerialArray

java.lang.Object
  繼承者 javax.sql.rowset.serial.SerialArray
所有已實作的介面:
Serializable, Cloneable, Array

public class SerialArray
extends Object
implements Array, Serializable, Cloneable

序列化的 Array 物件,它是 SQL ARRAY 值在 Java 程式語言中的映射關係。

SerialArray 類別提供一個根據 Array 物件創建 SerialArray 實例的建構子,提供獲取基本型別及其 SQL 名稱的各種方法,以及複製全部或部分 SerialArray 物件的各種方法。

註:要讓此類別正常運行,到資料源的連接必須可用,這樣在需要時才能實作 SQL Array 物件(將其所有元素置於客戶端伺服器)。在這種情況下,指向資料源中資料的邏輯指針(如定位符)當前不受支持。

另請參見:
序列化表格

建構子摘要
SerialArray(Array array)
          根據給定 Array 物件建構新的 SerialArray 物件。
SerialArray(Array array, Map<String,Class<?>> map)
          根據給定 Array 物件建構新的 SerialArray 物件,當陣列元素是 SQL UDT 時對每個元素的自定義映射關係使用給定的型別映射表。
 
方法摘要
 void free()
          此方法釋放 Array 物件及其佔有的資源。
 Object getArray()
          返回一個新陣列,它是此 SerialArray 物件的副本。
 Object getArray(long index, int count)
          返回一個新陣列,它是部分此 SerialArray 物件的副本,從給定索引處的元素開始,包含給定的連續元素數。
 Object getArray(long index, int count, Map<String,Class<?>> map)
          返回一個新陣列,它是部分此 SerialArray 物件的副本,從給定索引處的元素開始,包含給定的連續元素數。
 Object getArray(Map<String,Class<?>> map)
          返回一個新陣列,它是此 SerialArray 物件的副本,當元素為 SQL UDT 時對每個自定義映射關係的元素使用給定型別映射表。
 int getBaseType()
          獲取此 SerialArray 物件中 SQL 型別的元素。
 String getBaseTypeName()
          獲取此 SerialArray 物件元素特定於 DBMS 的型別名稱。
 ResultSet getResultSet()
          獲取 ResultSet 物件,該物件包含由此 SerialArray 物件所表示的所有 ARRAY 值中的元素。
 ResultSet getResultSet(long index, int count)
          獲取保存子陣列元素的 ResultSet 物件,該子陣列從 index 索引處開始,包含 count 個連續元素。
 ResultSet getResultSet(long index, int count, Map<String,Class<?>> map)
          獲取包含此 SerialArray 物件中元素的子陣列的 ResultSet 物件,該子陣列從 index 索引處開始,包含 count 個連續元素。
 ResultSet getResultSet(Map<String,Class<?>> map)
          獲取 ResultSet 物件,該物件包含由此 SerialArray 物件所表示的所有 SQL ARRAY 值的元素。
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

SerialArray

public SerialArray(Array array,
                   Map<String,Class<?>> map)
            throws SerialException,
                   SQLException
根據給定 Array 物件建構新的 SerialArray 物件,當陣列元素是 SQL UDT 時對每個元素的自定義映射關係使用給定的型別映射表。

如果陣列元素為 UDT 並且給定型別映射表具有針對該 UDT 的條目,則此方法執行自定義映射。自定義映射是遞歸的,這意味著,如果 SQL 結構型別的元素是 SQL 結構型別,而它本身又具有 SQL 結構型別的元素,則根據給定型別映射表映射每個具有自定義映射關係的結構型別。

SerialArray 物件包含的元素與用來建構它的 Array 物件相同,基本型別為 SQL 型別 STRUCTARRAYBLOBCLOBDATALINKJAVA_OBJECT 時除外。在這種情況下,新 SerialArray 物件中的每個元素都是適當的序列化形式,即 SerialStructSerialArraySerialBlobSerialClobSerialDatalinkSerialJavaObject 物件。

註:(1) 用來創建 SerialArray 物件的 Array 物件在被傳遞給建構子之前,必須已經在客戶端實作了 SQL ARRAY 值的資料。否則,新 SerialArray 物件將不包含任何資料。

註:(2) 如果 Array 套件含 java.sql.Types.JAVA_OBJECT 型別,則調用 SerialJavaObject 建構子,其中會執行檢查以確保此物件可序列化。

註:(3) 提供給此建構子的 Array 物件對於任何 Array.getArray() 方法都不能返回 nullSerialArray 無法序列化 null 陣列值。

參數:
array - 要序列化的 Array 物件
map - java.util.Map 物件,其中每個條目都包含:1) 給出 UDT(SQL 結構型別或 distinct 型別)完全限定名的 String 物件 2) 用於定義 UDT 映射方式的 SQLData 實作的 Class 物件。map 參數對 BlobClobDATALINKJAVA_OBJECT 型別沒有任何影響。
拋出:
SerialException - 如果在序列化 Array 物件時出錯
SQLException - 如果發生資料庫存取錯誤或者 arraymap 值為 null

SerialArray

public SerialArray(Array array)
            throws SerialException,
                   SQLException
根據給定 Array 物件建構新的 SerialArray 物件。

此建構子不執行自定義映射。如果陣列的基本型別為 SQL 結構型別並且需要自定義映射,則應該使用 SerialArray(Array array, Map map) 建構子。

SerialArray 物件包含的元素與其據以建構的 Array 物件相同,基本型別為 SQL 型別 BLOBCLOBDATALINKJAVA_OBJECT 時除外。在這種情況下,新 SerialArray 物件中的每個元素都是適當的序列化形式,即 SerialBlobSerialClobSerialDatalinkSerialJavaObject 物件。

註:(1) 用來創建 SerialArray 物件的 Array 物件在被傳遞給建構子之前,必須已經在客戶端實作了 SQL ARRAY 值的資料。否則,新 SerialArray 物件將不包含任何資料。

註:(2) 提供給此建構子的 Array 物件對於任何 Array.getArray() 方法都不能返回 nullSerialArray 無法序列化 null 陣列值。

參數:
array - 要序列化的 Array 物件
拋出:
SerialException - 如果在序列化 Array 物件時出錯
SQLException - 如果發生資料庫存取錯誤或者 array 參數為 null
方法詳細資訊

free

public void free()
          throws SQLException
此方法釋放 Array 物件及其佔有的資源。調用 free 方法後,該物件將無效。

如果多次調用了 free,則對 free 的後續調用都被視為無操作 (no-op)。

指定者:
介面 Array 中的 free
拋出:
SQLException - 如果釋放 Array 的資源時發生錯誤
SQLFeatureNotSupportedException - 如果 JDBC 驅動程序不支持此方法
從以下版本開始:
1.6

getArray

public Object getArray()
                throws SerialException
返回一個新陣列,它是此 SerialArray 物件的副本。

指定者:
介面 Array 中的 getArray
返回:
Java 程式語言中此 SerialArray 物件 Object 形式的副本
拋出:
SerialException - 如果在獲取此 SerialArray 物件的副本時出錯

getArray

public Object getArray(Map<String,Class<?>> map)
                throws SerialException
返回一個新陣列,它是此 SerialArray 物件的副本,當元素為 SQL UDT 時對每個自定義映射關係的元素使用給定型別映射表。

如果陣列元素為 UDT 並且給定型別映射表具有針對該 UDT 的條目,則此方法執行自定義映射。自定義映射是遞歸的,這意味著,如果 SQL 結構型別的元素是 SQL 結構型別,而它本身又具有 SQL 結構型別的元素,則根據給定型別映射表映射每個具有自定義映射關係的結構型別。

指定者:
介面 Array 中的 getArray
參數:
map - java.util.Map 物件,其中每個條目包含:1) 給出 UDT 完全限定名的 String 物件 2) 用於定義 UDT 映射方式的 SQLData 實作的 Class 物件
返回:
Java 程式語言中此 SerialArray 物件 Object 形式的副本
拋出:
SerialException - 如果發生錯誤

getArray

public Object getArray(long index,
                       int count)
                throws SerialException
返回一個新陣列,它是部分此 SerialArray 物件的副本,從給定索引處的元素開始,包含給定的連續元素數。

指定者:
介面 Array 中的 getArray
參數:
index - 此 SerialArray 物件中要複製的第一個元素的索引;第一個元素的索引為 0
count - 要複製的連續元素數,從給定索引處開始
返回:
Java 程式語言中此 SerialArray 物件指定元素的 Object 形式的副本
拋出:
SerialException - 如果發生錯誤

getArray

public Object getArray(long index,
                       int count,
                       Map<String,Class<?>> map)
                throws SerialException
返回一個新陣列,它是部分此 SerialArray 物件的副本,從給定索引處的元素開始,包含給定的連續元素數。

如果陣列元素為 UDT 並且給定型別映射表具有針對該 UDT 的條目,則此方法執行自定義映射。自定義映射是遞歸的,這意味著,如果 SQL 結構型別的元素是 SQL 結構型別,而它本身又具有 SQL 結構型別的元素,則根據給定型別映射表映射每個具有自定義映射關係的結構型別。

指定者:
介面 Array 中的 getArray
參數:
index - 此 SerialArray 物件中要複製的第一個元素的索引;陣列中第一個元素的索引為 0
count - 要複製的連續元素數,從給定的索引處開始
map - java.util.Map 物件,該物件中的每個條目包含:1) 給出 UDT 完全限定名的 String 物件 2) 用於定義 UDT 映射方式的 SQLData 實作的 Class 物件
返回:
Java 程式語言中此 SerialArray 物件指定元素 Object 形式的副本
拋出:
SerialException - 如果發生錯誤

getBaseType

public int getBaseType()
                throws SerialException
獲取此 SerialArray 物件中 SQL 型別的元素。返回的 intjava.sql.Types 類別中的一個常數。

指定者:
介面 Array 中的 getBaseType
返回:
java.sql.Types 中的一個常數,指示此 SerialArray 物件中 SQL 型別的元素
拋出:
SerialException - 如果發生錯誤

getBaseTypeName

public String getBaseTypeName()
                       throws SerialException
獲取此 SerialArray 物件元素特定於 DBMS 的型別名稱。

指定者:
介面 Array 中的 getBaseTypeName
返回:
DBMS 用於此 SerialArray 物件基本型別的 SQL 型別名稱
拋出:
SerialException - 如果發生錯誤

getResultSet

public ResultSet getResultSet(long index,
                              int count)
                       throws SerialException
獲取保存子陣列元素的 ResultSet 物件,該子陣列從 index 索引處開始,包含 count 個連續元素。此方法使用連接的型別映射表來映射陣列的元素,如果該映射表包含一個對應於基本型別的項。否則使用標準映射關係。

指定者:
介面 Array 中的 getResultSet
參數:
index - 此 SerialArray 物件中要複製的第一個元素的索引;陣列中第一個元素的索引為 0
count - 要複製的連續元素數,從給定索引處開始
返回:
包含此 SerialArray 物件中指定元素的 ResultSet 物件,每個元素一個單獨行
拋出:
SerialException - (該異常依次拋出 UnsupportedOperationException)如果調用此方法

getResultSet

public ResultSet getResultSet(Map<String,Class<?>> map)
                       throws SerialException
獲取 ResultSet 物件,該物件包含由此 SerialArray 物件所表示的所有 SQL ARRAY 值的元素。此方法使用指定的 map 進行型別映射自定義,除非陣列的基本型別與 map 中使用者定義型別 (UDT) 不比對,這種情況下使用標準映射關係。這一 getResultSet 方法使用給定型別映射表或標準映射關係;它絕不會使用與連接關聯的型別映射表。

指定者:
介面 Array 中的 getResultSet
參數:
map - java.util.Map 物件,其中每個條目包含:1) 給出 UDT 完全限定名的 String 物件 2) 用於定義 UDT 映射方式的 SQLData 實作的 Class 物件
返回:
包含此 SerialArray 物件中所有元素的 ResultSet 物件,第個元素一個單獨行
拋出:
SerialException - (該異常依次拋出 UnsupportedOperationException)如果調用此方法

getResultSet

public ResultSet getResultSet()
                       throws SerialException
獲取 ResultSet 物件,該物件包含由此 SerialArray 物件所表示的所有 ARRAY 值中的元素。如果合適,則使用該連接的型別映射表來映射陣列的元素;否則使用標準映射關係。

指定者:
介面 Array 中的 getResultSet
返回:
包含此 SerialArray 物件中所有元素的 ResultSet 物件,每個元素一個單獨行
拋出:
SerialException - (該異常依次拋出 UnsupportedOperationException)如果調用此方法

getResultSet

public ResultSet getResultSet(long index,
                              int count,
                              Map<String,Class<?>> map)
                       throws SerialException
獲取包含此 SerialArray 物件中元素的子陣列的 ResultSet 物件,該子陣列從 index 索引處開始,包含 count 個連續元素。此方法使用指定的 map 進行型別映射自定義,除非陣列的基本型別與 map 中使用者定義型別 (UDT) 不比對,這種情況下使用標準映射關係。這一 getResultSet 方法使用給定型別映射表或標準映射關係;它絕不會使用與連接關聯的型別映射表。

指定者:
介面 Array 中的 getResultSet
參數:
index - 此 SerialArray 物件中要複製的第一個元素的索引;陣列中第一個元素的索引為 0
count - 要複製的連續元素數,從給定的索引處開始
map - java.util.Map 物件,該物件中的每個條目包含:1) 給出 UDT 完全限定名的 String 物件 2) 用於定義 UDT 映射方式的 SQLData 實作的 Class 物件
返回:
包含此 SerialArray 物件中指定元素的 ResultSet 物件,每個元素一個單獨行
拋出:
SerialException - (該異常依次拋出 UnsupportedOperationException)如果調用此方法

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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