|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface SQLData
SQL ユーザー定義型 (UDT) を Java プログラミング言語のクラスにカスタムマッピングするのに使用されるインタフェースです。SQLData インタフェースを実装するクラスのクラスオブジェクトは、カスタムマッピングされる UDT の SQL 名とともに適切な Connection オブジェクトの型マップに入力されます。
通常 SQLData 実装は、SQL 構造化型の各属性のフィールド、または SQL DISTINCT 型の単一フィールドを定義します。ResultSet.getObject メソッドによってデータソースから UDT が取得されると、その UDT はこのクラスのインスタンスとしてマッピングされます。プログラマは、Java プログラミング言語のほかのオブジェクトの場合と同じようにこのクラスインスタンスで操作し、PreparedStatement.setObject メソッドを呼び出して、行なった変更をこのクラスインスタンスに保存することができます。このメソッドは、このクラスインスタンスを SQL 型にマッピングし直します。
カスタムマッピングのクラスの実装をツールによって行うことが期待できます。通常の実装では、プログラマは単に SQL UDT の名前、その名前がマッピングされるクラスの名前、および UDT の各属性がマッピングされるフィールドの名前を指定するだけです。ツールはこの情報を使って SQLData.readSQL メソッドおよび SQLData.writeSQL メソッドを実装します。readSQL メソッドが該当の SQLInput メソッドを呼び出して SQLInput オブジェクトから各属性を読み込み、writeSQL メソッドが SQLOutput メソッドを呼び出して SQLOutput オブジェクトを使って各属性をデータソースに書き込みます。
通常アプリケーションプログラマが SQLData を直接呼び出すことはなく、SQLInput メソッドおよび SQLOutput メソッドは、アプリケーションコードによってではなく SQLData メソッドによって内部で呼び出されます。
| メソッドの概要 | |
|---|---|
String |
getSQLTypeName()
このオブジェクトが表す SQL ユーザー定義型の完全指定名を返します。 |
void |
readSQL(SQLInput stream,
String typeName)
データベースから読み出したデータをこのオブジェクトに設定します。 |
void |
writeSQL(SQLOutput stream)
このオブジェクトをデータソースの SQL 値に変換し、指定された SQL データストリームに書き込みます。 |
| メソッドの詳細 |
|---|
String getSQLTypeName()
throws SQLException
SQLData のこのインスタンスにマッピングされる UDT インスタンスの名前を取得するために JDBC ドライバによって呼び出されます。
readSQL メソッドに渡された型名
SQLException - データベースアクセスエラーがある場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
void readSQL(SQLInput stream,
String typeName)
throws SQLException
readSQL メソッドが、このオブジェクトまたはほかのオブジェクトの適切なフィールドまたは要素にデータを割り当てます。具体的には、該当する reader メソッド (SQLInput.readString、SQLInput.readBigDecimal など) を呼び出して次の処理を行う必要があります。個別の型の場合はその単一のデータ要素を読み込み、構造化型の場合は SQL 型の各属性の値を読み込みます。
SQLInput reader メソッドによって使用されるこのメソッドを呼び出します。
stream - カスタムマッピングされるデータの値を読み出す SQLInput オブジェクトtypeName - データストリームの値の SQL 型名
SQLException - データベースアクセスエラーがある場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合SQLInput
void writeSQL(SQLOutput stream)
throws SQLException
SQLOutput writer メソッド (writeInt、writeString など) を呼び出して次の処理を行う必要があります。個別の型の場合は単一のデータ要素を書き込み、構造化型の場合は SQL 型の各属性の値を書き込みます。
stream - カスタムマッピングされたデータの値を書き込む SQLOutput オブジェクト
SQLException - データベースアクセスエラーがある場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合SQLOutput
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。