public class SerialArray extends Object implements Array, Serializable, Cloneable
Array オブジェクトの直列化バージョンであり、Java プログラミング言語での SQL ARRAY 値のマッピングです。
SerialArray クラスは、Array オブジェクトから SerialArray インスタンスを作成するためのコンストラクタと、基底型とその SQL 名を取得するためのメソッドと、SerialArray オブジェクトの一部または全部をコピーするためのメソッドを提供します。
注: このクラスを正常に動作させるためには、必要に応じて SQL Array オブジェクトを生成する (そのすべての要素をクライアントサーバーに移動させる) ためにデータソース接続が利用可能である必要があります。現時点では、ロケータなどのデータソースのデータへの論理ポインタはサポートされていません。
| コンストラクタと説明 |
|---|
SerialArray(Array array)
指定された
Array オブジェクトから新しい SerialArray オブジェクトを構築します。 |
SerialArray(Array array, Map<String,Class<?>> map)
要素が SQL UDT であるとき、各要素のカスタムマッピングに使用される指定の型マップを使って、指定された
Array オブジェクトから新しい SerialArray オブジェクトを構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
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)
要素が SQL UDT であるとき、各要素のカスタムマッピングに使用される指定の型マップを使って、この
SerialArray オブジェクトのコピーである新しい配列を返します。 |
int |
getBaseType()
この
SerialArray オブジェクト内の要素の SQL 型を取得します。 |
String |
getBaseTypeName()
この
SerialArray オブジェクト内に格納された要素の DBMS 固有の型名を取得します。 |
ResultSet |
getResultSet()
この
SerialArray オブジェクトによって表現する ARRAY 値のすべての要素が格納されている ResultSet オブジェクトを取得します。 |
ResultSet |
getResultSet(long index, int count)
インデックス index で始まり、最大で count 個の連続した部分配列の要素が格納されている
ResultSet オブジェクトを取得します。 |
ResultSet |
getResultSet(long index, int count, Map<String,Class<?>> map)
インデックス index で始まり、最大で count 個の連続した要素を格納する
SerialArray オブジェクトの要素の部分配列を格納する ResultSet オブジェクトを取得します。 |
ResultSet |
getResultSet(Map<String,Class<?>> map)
この
SerialArray オブジェクトによって表現された SQL ARRAY 値のすべての要素を含む ResultSet オブジェクトを取得します。 |
public SerialArray(Array array, Map<String,Class<?>> map) throws SerialException, SQLException
Array オブジェクトから新しい SerialArray オブジェクトを構築します。
このメソッドは、配列要素が UDT で、指定された型マップに UDT のエントリがある場合に、カスタムマッピングを行います。カスタムマッピングは再帰的です。たとえば、SQL 構造型のある要素が、それ自体 SQL 構造型の要素を持つ SQL 構造型である場合、カスタムマッピングを持つ各構造型が、指定の型マップに従ってマップされます。
新しい SerialArray オブジェクトは、その構築に使用される Array オブジェクトと同じ要素を格納します。ただし、基底型が SQL 型の STRUCT、ARRAY、BLOB、CLOB、DATALINK、JAVA_OBJECT である場合を除きます。この場合、新しい SerialArray オブジェクト内の各要素は、適切な直列化フォーム、すなわち SerialStruct、SerialArray、SerialBlob、SerialClob、SerialDatalink、SerialJavaObject のいずれかのオブジェクトになります。
注: (1) SerialArray オブジェクトの作成に使用される Array オブジェクトは、コンストラクタに渡される前に、クライアントに SQL ARRAY 値のデータを渡していなければいけません。そうしないと、新しい SerialArray オブジェクトはデータを持たないオブジェクトになります。
注: (2) Array に java.sql.Types.JAVA_OBJECT 型が格納されている場合、SerialJavaObject コンストラクタが呼び出され、このオブジェクトが直列化可能であることが確認されます。
注: (3) このコンストラクタに指定された Array オブジェクトは、Array.getArray() メソッドに対して null を返すことはできません。SerialArray は null 配列値を直列化できません。
array - 直列化される Array オブジェクトmap - java.util.Map オブジェクト。オブジェクト内の各エントリは、(1) UDT (SQL 構造化型または SQL DISTINCT 型) の完全修飾名を指定する String オブジェクトと、(2) UDT のマッピング方法を定義する SQLData 実装の Class オブジェクトで構成される。map パラメータは、Blob、Clob、DATALINK、または JAVA_OBJECT 型に対しては無効。SerialException - Array オブジェクトの直列化時にエラーが発生した場合SQLException - データベースアクセスエラーが発生した場合、または array か map の値が null の場合public SerialArray(Array array) throws SerialException, SQLException
Array オブジェクトから新しい SerialArray オブジェクトを構築します。
このコンストラクタは、カスタムマッピングを行いません。配列の基底型が SQL 構造型であり、カスタムマッピングが必要な場合は、コンストラクタ SerialArray(Array array, Map map) を使用する必要があります。
新しい SerialArray オブジェクトは、その構築に使用される Array オブジェクトと同じ要素を格納します。ただし、基底型が SQL 型の BLOB、CLOB、DATALINK、JAVA_OBJECT である場合を除きます。この場合、新しい SerialArray オブジェクト内の各要素は、適切な直列化フォーム、すなわち SerialBlob、SerialClob、SerialDatalink、SerialJavaObject のいずれかのオブジェクトになります。
注: (1) SerialArray オブジェクトの作成に使用される Array オブジェクトは、コンストラクタに渡される前に、クライアントに SQL ARRAY 値のデータを渡していなければいけません。そうしないと、新しい SerialArray オブジェクトはデータを持たないオブジェクトになります。
注: (2) このコンストラクタに指定された Array オブジェクトは、Array.getArray() メソッドに対して null を返すことはできません。SerialArray は null 配列値を直列化できません。
array - 直列化される Array オブジェクトSerialException - Array オブジェクトの直列化時にエラーが発生した場合SQLException - データベースアクセスエラーが発生した場合、または array パラメータが null の場合。public void free()
throws SQLException
Array オブジェクトを解放して、保持されているリソースを解放します。free メソッドが一度呼び出されたあとは、オブジェクトは無効になります。
free が呼び出されると、free 以外のメソッドを呼び出そうとしても、SQLException がスローされます。free を複数回呼び出した場合、2 回目以降の free 呼び出しは何も行わないものとして扱われます。
free、インタフェース: ArraySQLException - Array のリソースの解放時にエラーが発生した場合SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合public Object getArray() throws SerialException
SerialArray オブジェクトのコピーである新しい配列を返します。getArray、インタフェース: ArraySerialArray オブジェクトのコピーに相当する、Java プログラミング言語での ObjectSerialException - この SerialArray オブジェクトのコピーの取得時にエラーが発生した場合public Object getArray(Map<String,Class<?>> map) throws SerialException
SerialArray オブジェクトのコピーである新しい配列を返します。
このメソッドは、配列要素が UDT で、指定された型マップに UDT のエントリがある場合に、カスタムマッピングを行います。カスタムマッピングは再帰的です。たとえば、SQL 構造型のある要素が、それ自体 SQL 構造型の要素を持つ SQL 構造型である場合、カスタムマッピングを持つ各構造型が、指定の型マップに従ってマップされます。
getArray、インタフェース: Arraymap - java.util.Map オブジェクト。オブジェクト内の各エントリは、(1) UDT の完全修飾名を指定する String オブジェクトと、(2) UDT のマッピング方法を定義する SQLData 実装の Class オブジェクトで構成されるSerialArray オブジェクトのコピーに相当する、Java プログラミング言語での ObjectSerialException - エラーが発生した場合public Object getArray(long index, int count) throws SerialException
SerialArray オブジェクトのスライスのコピーとなる新しい配列 (指定されたインデックス位置の要素から指定の要素数分続く) を返します。getArray、インタフェース: Arrayindex - この SerialArray オブジェクト内で、最初の要素がコピーされる位置を表すインデックス。最初の要素のインデックスは 0count - コピーされる連続した要素数。指定されたインデックス位置から開始されるSerialArray オブジェクト内の指定された要素のコピーに相当する、Java プログラミング言語での ObjectSerialException - エラーが発生した場合public Object getArray(long index, int count, Map<String,Class<?>> map) throws SerialException
SerialArray オブジェクトのスライスのコピーとなる新しい配列 (指定されたインデックス位置の要素から指定の要素数分続く) を返します。
このメソッドは、配列要素が UDT で、指定された型マップに UDT のエントリがある場合に、カスタムマッピングを行います。カスタムマッピングは再帰的です。たとえば、SQL 構造型のある要素が、それ自体 SQL 構造型の要素を持つ SQL 構造型である場合、カスタムマッピングを持つ各構造型が、指定の型マップに従ってマップされます。
getArray、インタフェース: Arrayindex - この SerialArray オブジェクト内で、最初の要素がコピーされる位置を表すインデックス。配列内の最初の要素のインデックスは 0count - コピーされる連続した要素数。指定されたインデックス位置から開始されるmap - java.util.Map オブジェクト。オブジェクト内の各エントリは、(1) UDT の完全修飾名を指定する String オブジェクトと、(2) UDT のマッピング方法を定義する SQLData 実装の Class オブジェクトで構成されるSerialArray オブジェクト内の指定された要素のコピーに相当する、Java プログラミング言語での ObjectSerialException - エラーが発生した場合public int getBaseType()
throws SerialException
SerialArray オブジェクト内の要素の SQL 型を取得します。返される int は、java.sql.Types クラスの定数の 1 つです。getBaseType、インタフェース: Arrayjava.sql.Types 内の定数の 1 つ。この SerialArray オブジェクト内の要素の SQL 型を表すSerialException - エラーが発生した場合public String getBaseTypeName() throws SerialException
SerialArray オブジェクト内に格納された要素の DBMS 固有の型名を取得します。getBaseTypeName、インタフェース: ArraySerialArray オブジェクトの基底型の、DBMS によって使用される SQL 型名SerialException - エラーが発生した場合public ResultSet getResultSet(long index, int count) throws SerialException
ResultSet オブジェクトを取得します。マップに基底型のエントリが格納されている場合、このメソッドは接続の型マップを使って配列の要素をマッピングします。そうでない場合は、標準のマップが使われます。getResultSet、インタフェース: Arrayindex - この SerialArray オブジェクト内で、最初の要素がコピーされる位置を表すインデックス。配列内の最初の要素のインデックスは 0count - コピーされる連続した要素数。指定されたインデックス位置から開始されるSerialArray オブジェクト内の指定の要素を格納する ResultSet オブジェクト。各要素は別々の行に示されるSerialException, - このメソッドが呼び出された場合、UnsupportedOperationException がスローされるSerialExceptionpublic ResultSet getResultSet(Map<String,Class<?>> map) throws SerialException
SerialArray オブジェクトによって表現された SQL ARRAY 値のすべての要素を含む ResultSet オブジェクトを取得します。このメソッドは、指定された map を型マップのカスタマイズに使います。ただし配列の基底型が map のユーザー定義型 (UDT) と一致しない場合は、代わりに標準のマップが使われます。このバージョンの getResultSet メソッドは、指定された型マップか、標準マップのどちらかを使います。接続に関連した型マップは使われません。getResultSet、インタフェース: Arraymap - java.util.Map オブジェクト。オブジェクト内の各エントリは、(1) UDT の完全修飾名を指定する String オブジェクトと、(2) UDT のマッピング方法を定義する SQLData 実装の Class オブジェクトで構成されるSerialArray オブジェクト内のすべての要素を格納する ResultSet オブジェクト。各要素は別々の行に示されるSerialException, - このメソッドが呼び出された場合、UnsupportedOperationException がスローされるSerialExceptionpublic ResultSet getResultSet() throws SerialException
SerialArray オブジェクトによって表現する ARRAY 値のすべての要素が格納されている ResultSet オブジェクトを取得します。該当する場合は、配列の要素が接続の型マップを使ってマッピングされます。そうでない場合は、標準のマップが使用されます。getResultSet、インタフェース: ArraySerialArray オブジェクト内のすべての要素を格納する ResultSet オブジェクト。各要素は別々の行に示されるSerialException - このメソッドが呼び出された場合、UnsupportedOperationException がスローされるpublic ResultSet getResultSet(long index, int count, Map<String,Class<?>> map) throws SerialException
SerialArray オブジェクトの要素の部分配列を格納する ResultSet オブジェクトを取得します。このメソッドは、指定された map を型マップのカスタマイズに使います。ただし配列の基底型が map のユーザー定義型 (UDT) と一致しない場合は、代わりに標準のマップが使われます。このバージョンの getResultSet メソッドは、指定された型マップか、標準マップのどちらかを使います。接続に関連した型マップは使われません。getResultSet、インタフェース: Arrayindex - この SerialArray オブジェクト内で、最初の要素がコピーされる位置を表すインデックス。配列内の最初の要素のインデックスは 0count - コピーされる連続した要素数。指定されたインデックス位置から開始されるmap - java.util.Map オブジェクト。オブジェクト内の各エントリは、(1) UDT の完全修飾名を指定する String オブジェクトと、(2) UDT のマッピング方法を定義する SQLData 実装の Class オブジェクトで構成されるSerialArray オブジェクト内の指定の要素を格納する ResultSet オブジェクト。各要素は別々の行に示されるSerialException - 呼び出された場合、UnsupportedOperationException をスローする バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.