|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjavax.sql.rowset.serial.SerialBlob
public class SerialBlob
Java プログラミング言語での SQL BLOB
値の直列化マッピングです。
SerialBlob
クラスは、Blob
オブジェクトからインスタンスを作成するためのコンストラクタを提供します。Blob
オブジェクトは、SerialBlob
オブジェクトを構築する前に、クライアントに SQL BLOB
値のデータを渡す必要があります。SQL BLOB
値のデータは、クライアント上で、Blob.getBytes
メソッドによってバイト配列として生成されます。 または、Blob.getBinaryStream
メソッドによって未解釈のバイトストリームとして生成されます。
SerialBlob
メソッドは、SerialBlob
オブジェクトをバイト配列またはストリームとしてコピーできます。さらに、SerialBlob
オブジェクト内で、指定されたバイトパターンや Blob
オブジェクトを検索し、Blob
オブジェクトを更新または切り詰めることもできます。
コンストラクタの概要 | |
---|---|
SerialBlob(Blob blob)
指定された Blob オブジェクトの直列化されたバージョンである SerialBlob オブジェクトを構築します。 |
|
SerialBlob(byte[] b)
指定された byte 配列の直列化されたバージョンである SerialBlob オブジェクトを構築します。 |
メソッドの概要 | |
---|---|
void |
free()
このメソッドは、 Blob オブジェクトを解放して、保持されているリソースを解放します。 |
InputStream |
getBinaryStream()
この SerialBlob オブジェクトを入力ストリームとして返します。 |
InputStream |
getBinaryStream(long pos,
long length)
Blob 値の一部 (バイト位置 pos から長さ length バイト分) を格納した InputStream オブジェクトを返します。 |
byte[] |
getBytes(long pos,
int length)
この SerialBlob オブジェクトの指定の位置から、指定されたバイト数を別のバイト配列にコピーします。 |
long |
length()
この SerialBlob オブジェクトのバイト配列のバイト数を取得します。 |
long |
position(Blob pattern,
long start)
この SerialBlob オブジェクト内で、指定の Blob オブジェクトが開始される位置を返します。 |
long |
position(byte[] pattern,
long start)
この SerialBlob オブジェクト内で、指定されたバイトパターンが開始される位置を返します。 |
OutputStream |
setBinaryStream(long pos)
この BLOB オブジェクトが表す Blob 値への書き込みに使用するストリームを取得します。 |
int |
setBytes(long pos,
byte[] bytes)
この Blob オブジェクトが表す BLOB 値へ指定されたバイト配列を pos の位置から書き込み、書き込まれたバイト数を返します。 |
int |
setBytes(long pos,
byte[] bytes,
int offset,
int length)
この Blob オブジェクトが表す BLOB 値へ指定された byte 配列の全部または一部を書き込み、書き込まれたバイト数を返します。 |
void |
truncate(long length)
この Blob オブジェクトが表す BLOB 値を len バイトの長さに切り詰めます。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public SerialBlob(byte[] b) throws SerialException, SQLException
byte
配列の直列化されたバージョンである SerialBlob
オブジェクトを構築します。
新しい SerialBlob
オブジェクトは、byte
配列のデータで初期化されます。 このため、未接続の RowSet
オブジェクトは、データソースに手を加えずに直列化された Blob
オブジェクトを作成できます。
b
- 直列化される Blob
オブジェクトの データを格納する byte
配列
SerialException
- 直列化でエラーが発生した場合
SQLException
- SQL エラーが発生した場合public SerialBlob(Blob blob) throws SerialException, SQLException
Blob
オブジェクトの直列化されたバージョンである SerialBlob
オブジェクトを構築します。
新しい SerialBlob
オブジェクトは、Blob
オブジェクトのデータで初期化されます。 このため、Blob
オブジェクトは、あらかじめデータベースからクライアントへ SQL BLOB
値のデータを渡しておく必要があります。そうしないと、新しい SerialBlob
オブジェクトは、データを持たないオブジェクトになります。
blob
- この SerialBlob
オブジェクトの 構築に使用される Blob
オブジェクト。 null 以外
SerialException
- 直列化でエラーが発生した場合
SQLException
- このコンストラクタに渡された Blob
が null
の場合Blob
メソッドの詳細 |
---|
public byte[] getBytes(long pos, int length) throws SerialException
SerialBlob
オブジェクトの指定の位置から、指定されたバイト数を別のバイト配列にコピーします。
コピーされるバイト数がこの SerialBlob
オブジェクトのバイト配列より長くなる場合、配列の長さに合わせて切り詰められます。
Blob
内の getBytes
pos
- この SerialBlob
オブジェクト内の コピーされる最初のバイトの位置。 1
から開始され、 1
より小さい値にはならない。 また、この SerialBlob
オブジェクトの長さ以下でなければならないlength
- コピーされるバイト数
SerialBlob
オブジェクトの コピー領域となるバイト配列。 指定位置から指定のバイト数分続く
SerialException
- 指定された開始位置が範囲外にある場合Blob.setBytes(long, byte[])
public long length() throws SerialException
SerialBlob
オブジェクトのバイト配列のバイト数を取得します。
Blob
内の length
SerialBlob
オブジェクトのバイト配列の バイト数を示す long
SerialException
- エラーが発生した場合public InputStream getBinaryStream() throws SerialException
SerialBlob
オブジェクトを入力ストリームとして返します。関連メソッド setBinaryStream
とは異なり、SerialBlob
が Blob
オブジェクトによって作成されたか、または byte
配列によって作成されたかに関係なく、ストリームが生成されます。
Blob
内の getBinaryStream
SerialBlob
のバイト配列を 格納する java.io.InputStream
オブジェクト
SerialException
- エラーが発生した場合setBinaryStream(long)
public long position(byte[] pattern, long start) throws SerialException, SQLException
SerialBlob
オブジェクト内で、指定されたバイトパターンが開始される位置を返します。 検索は指定位置から開始されます。
Blob
内の position
pattern
- 検索対象のバイトパターンstart
- この SerialBlob
オブジェクト内で、 検索が開始されるバイトの位置。 最初の位置は 1
。 1
以上かつ この SerialBlob
オブジェクトの長さ以下でなければならない
SerialBlob
オブジェクト内で、 指定されたバイトパターンが開始される位置。検索は指定位置から開始される。 パターンが見つからない場合や 開始位置が範囲外にある場合は -1
。 戻り値の位置番号は 1
から開始される
SerialException
- blob の直列化中にエラーが発生した場合
SQLException
- データベースから BLOB
値にアクセスするときに エラーが発生した場合public long position(Blob pattern, long start) throws SerialException, SQLException
SerialBlob
オブジェクト内で、指定の Blob
オブジェクトが開始される位置を返します。 検索は指定位置から開始されます。
Blob
内の position
pattern
- 検索対象の Blob
オブジェクトstart
- この SerialBlob
オブジェクト内で、 検索が開始されるバイトの位置。 最初の位置は 1
。 1
以上かつ この SerialBlob
オブジェクトの長さ以下でなければならない
SerialBlob
オブジェクト内で、 指定された Blob
オブジェクトが開始される位置。検索は指定位置から開始される。 パターンが見つからない場合や 開始位置が範囲外にある場合は -1
。 戻り値の位置番号は 1
から開始される
SerialException
- blob の直列化中にエラーが発生した場合
SQLException
- データベースから BLOB
値にアクセスするときに エラーが発生した場合public int setBytes(long pos, byte[] bytes) throws SerialException, SQLException
Blob
オブジェクトが表す BLOB
値へ指定されたバイト配列を pos
の位置から書き込み、書き込まれたバイト数を返します。
Blob
内の setBytes
pos
- 書き込みが開始される SQL BLOB
値の 位置。最初の位置は 1
。1
以上かつこの SerialBlob
オブジェクトの長さ以下でなければならないbytes
- この Blob
オブジェクトを表す BLOB
値へ書き込まれるバイト配列
SerialException
- BLOB
値にアクセスするときにエラーが発生した場合、 設定された位置が無効な場合、 または設定されたオフセット値が無効な場合
SQLException
- データベースから BLOB
値にアクセスするときに エラーが発生した場合getBytes(long, int)
public int setBytes(long pos, byte[] bytes, int offset, int length) throws SerialException, SQLException
Blob
オブジェクトが表す BLOB
値へ指定された byte
配列の全部または一部を書き込み、書き込まれたバイト数を返します。書き込みは、BLOB
値の pos
の位置から開始され、書き込み先の指定されたバイト配列から len バイト書き込まれます。
Blob
内の setBytes
pos
- 書き込みが開始される BLOB
オブジェクトの 位置。最初の位置は 1
。1
以上かつこの SerialBlob
オブジェクトの長さ以下でなければならないbytes
- この BLOB
値へ書き込まれるバイト配列 valueoffset
- バイトの読み込みを開始する byte
配列の オフセット。最初のオフセット位置は 0
。0
以上かつ byte
配列の長さ以下でなければならないlength
- バイト配列 bytes から BLOB
値へ 書き込まれるバイト数
SerialException
- BLOB
値にアクセスするときにエラーが発生した場合、 設定された位置が無効な場合、 設定されたオフセット値が無効な場合、 書き込まれるバイト数が SerialBlob
の長さを超えている場合、 または長さとオフセットを合わせた値が Blob バッファーより大きい場合
SQLException
- データベースから BLOB
値にアクセスするときに エラーが発生した場合getBytes(long, int)
public OutputStream setBinaryStream(long pos) throws SerialException, SQLException
BLOB
オブジェクトが表す Blob
値への書き込みに使用するストリームを取得します。ストリームは pos
の位置から開始します。このメソッドは、この SerialBlob
オブジェクトが Blob
によってインスタンス化されている場合に、setBinaryStream()
を配下の Blob
に転送します。この SerialBlob
が byte
配列によってインスタンス化されている場合は SerialException
がスローされます。
Blob
内の setBinaryStream
pos
- 書き込みが開始される BLOB
値の 位置
java.io.OutputStream
オブジェクト
SQLException
- BLOB
値にアクセスするときにエラーが発生した場合
SerialException
- SerialBlob が setBinaryStream()
をサポートする Blob
オブジェクトによって インスタンス化されていない場合getBinaryStream()
public void truncate(long length) throws SerialException
Blob
オブジェクトが表す BLOB
値を len
バイトの長さに切り詰めます。
Blob
内の truncate
length
- この Blob
オブジェクトが表す BLOB
値が切り詰められる長さ (バイト単位)
SerialException
- Blob 値にアクセスするときにエラーが発生した場合、 または切り詰める長さが SerialBlob の長さよりも長い場合public InputStream getBinaryStream(long pos, long length) throws SQLException
Blob
値の一部 (バイト位置 pos から長さ length バイト分) を格納した InputStream
オブジェクトを返します。
Blob
内の getBinaryStream
pos
- 取得する部分値の最初のバイトまでのオフセット。Blob
内で最初のバイトの位置は 1length
- 取得する部分値の長さ (バイト単位)
Blob
値の一部を読み取ることのできる InputStream
SQLException
- pos が 1 より小さい場合、pos が Blob
内のバイト数より大きい場合、または pos + length が Blob
内のバイト数より大きい場合public void free() throws SQLException
Blob
オブジェクトを解放して、保持されているリソースを解放します。Blob
オブジェクト。free
メソッドが一度呼び出されたあとは、オブジェクトは無効になります。free
を複数回呼び出した場合、2 回目以降の free
呼び出しは何も行わないものとして扱われます。
Blob
内の free
SQLException
- Blob のリソースの解放時にエラーが発生した場合
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。