|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | |||||||||
RowSet 実装の標準インタフェースと基底クラスです。
参照先:
説明
| インタフェースの概要 | |
|---|---|
| CachedRowSet | CachedRowSetのすべての標準実装が実装しなければならないインタフェースです。 |
| FilteredRowSet | FilteredRowSet のすべての標準実装が実装しなければならない標準インタフェースです。 |
| JdbcRowSet | JdbcRowSet のすべての標準実装が実装しなければならない標準インタフェースです。 |
| Joinable | 1.0 背景
Joinable インタフェースは、一致列の取得と設定のメソッドを提供します。 |
| JoinRowSet | JoinRowSet インタフェースは、異なった RowSet オブジェクトの関連データを、SQL JOIN を表す 1 つの JoinRowSet オブジェクトにまとめる機構を提供します。 |
| Predicate | すべての FilteredRowSet オブジェクトにフィルタを記述するフレームワークを提供する標準インタフェースです。 |
| WebRowSet | WebRowSet のすべての実装が実装しなければならない標準インタフェースです。 |
| クラスの概要 | |
|---|---|
| BaseRowSet | RowSet オブジェクトとその基本機能を提供する抽象クラスです。 |
| RowSetMetaDataImpl | RowSet オブジェクトの列に関するメタデータ情報を設定および取得するメソッドの実装を提供します。 |
| 例外の概要 | |
|---|---|
| RowSetWarning | RowSet オブジェクトに設定されたデータベース警告に関する情報を提供する SQLException の拡張です。 |
JDBC RowSet 実装の標準インタフェースと基底クラスです。このパッケージには、標準 RowSet 実装が実装または拡張するインタフェースとクラスが含まれています。
RowSet インタフェースを指定します。これらの 5 つのインタフェースはすべて、JDBC 3.0 仕様に記述されている RowSet インタフェースを拡張します。このテクノロジの発達とともに、より専門化された JDBC RowSet 型の追加定義が追加される予定です。将来の定義は、この仕様と同じように、継承を利用してサブインタフェースとして指定されることになっています。注: このパッケージで提供されるインタフェース定義は、これに準拠したすべての JDBC RowSet 実装の基盤となります。ベンダーや開発者が、定義に準拠した独自の RowSet 実装を提供したい場合は、仕様インタフェースに詳述されているアサーションに注意する必要があります。
JdbcRowSet - 結果セットを JavaBeansTM コンポーネントとして使用できるようにする ResultSet オブジェクトのラッパーです。JdbcRowSet オブジェクトは、あらゆるツールで、コンポーネントベースのアーキテクチャの一部としてアプリケーションをアセンブルするために使用できる Bean になります。JdbcRowSet オブジェクトは、接続された RowSet オブジェクトです。つまり、JDBC テクノロジを使用可能なドライバ (JDBCドライバ) を使ってデータソースとの接続を継続して保持する必要があります。さらに、JdbcRowSet オブジェクトは、JDBC 3.0 仕様の定義に従って、完全に更新可能でスクロール可能な表データ構造を提供します。CachedRowSetTM - CachedRowSet オブジェクトは、スクロール、更新、直列化が可能で、通常はデータソースから切断された JavaBeansTM コンポーネントです。CachedRowSet オブジェクトには、通常、結果セットの行が格納されますが、スプレッドシートなど、表形式のあらゆるファイルの行を格納することもできます。CachedRowSet 実装は、未接続の RowSet オブジェクトと元のデータソースの同期を取るため、SyncFactory を使って、プラグイン可能な SyncProvider オブジェクトを管理および取得する必要があります。通常、SyncProvider 実装は、JDBC ドライバを利用して特定のデータソースに接続します。この機構の詳細については、javax.sql.rowset.spi パッケージ仕様を参照してください。WebRowSet - WebRowSet オブジェクトは、整形式の XML で RowSet オブジェクトの読み取りと書き込みを行うことができる CachedRowSet の拡張です。このクラスは、XmlReader オブジェクト (RowSetReader インタフェースの拡張) を呼び出して、XML 形式で行セットを読み取ります。また、XmlWriter オブジェクト (RowSetWriter インタフェースの拡張) を呼び出して、XML 形式で行セットを書き込みます。WebRowSet オブジェクトが必要とするリーダおよびライターは、SyncFactory により、SyncProvider 実装の形式で提供されます。確実に整形式の XML を使用できるように、http://java.sun.com/xml/ns/jdbc/webrowset.xsd に、標準の汎用 XML スキーマが定義され、公開されています。
FilteredRowSet - FilteredRowSet オブジェクトは、プログラムを使った拡張可能な方式のフィルタリング機能を提供します。RowSet object が、未接続の環境を犠牲にすることなくコンテンツにフィルタリングを適用する必要がある場合は、多数存在します。これは、データソースへの接続を作成するコストの削減のためです。このニーズのソリューションは多岐に渡っており、とても重いフルスケールの SQL クエリー機能を提供する方法から、移植可能なコンポーネントを提供する方法、より軽量な方法が用意されています。FilteredRowSet オブジェクトは、実行時にフィルタを定義できる プレディケート インタフェースの実装を使用します。また、FilteredRowSet オブジェクトは、読み取りと書き込みの操作の着信および送信にセットフィルタを適用する処理を課されています。よって、すべてのフィルタは、双方向と見なされます。標準フィルタは未定義です。ただし、必要なフィルタを実施するために十分な機構が指定されます。JoinRowSet - JoinRowSet インタフェースは、複数の標準 RowSet 実装の関係を確立する機構を記述します。RowSet オブジェクトが SQL JOIN 方式で関連付け可能な場合、JoinRowSet オブジェクトに追加できる RowSet オブジェクトの数に制限はありません。定義によると、SQL JOIN 文は、共通の属性に基づいて、複数のリレーショナルデータベーステーブル内のデータを結合するために使用されます。列のマッチングを作成し、施行することにより、JoinRowSet オブジェクトは、元のデータソースはそのままで、RowSet インスタンス同士の関係を確立します。
RowSet 実装の準拠実装は、この仕様に記述されたアサーションに従う必要があります。Java Community Process の規定に従って、仕様との互換性を確保するため、Test Compatibility Kit (TCK) をライセンスできます。以下の段落では、標準 JDBC RowSet 定義の実装の開始点について概説します。SyncProvider 実装のガイドラインについては、BaseRowSet クラスの役割準拠した JDBC RowSet 実装は、このパッケージに指定された標準インタフェースを 1 つ以上実装する必要があります。また、BaseRowSet 抽象クラスを拡張することができます。たとえば、CachedRowSet 実装は、CachedRowSet インタフェースを実装し、BaseRowSet 抽象クラスを拡張する必要があります。BaseRowSet クラスは、RowSet オブジェクトが接続環境にあるか未接続の環境にあるかに関係なく、すべての RowSet 実装の構築に使用される標準アーキテクチャを提供します。BaseRowSet 抽象クラスは、RowSet に、プロパティの操作やイベント通知に代表される、JavaBeans コンポーネント要件に完全準拠した基本機能を提供します。たとえば、com.sun.rowset パッケージ内のリファレンス実装で提供されるすべての実装は、BaseRowSet クラスを実装の基盤として使用します。
以下の表に、BaseRowSet 抽象クラスの機能を示します。
機能
詳細
プロパティ アプリケーションに RowSetコマンドやプロパティ値の取得および設定を提供する標準 JavaBeans プロパティ操作機構を提供する。標準RowSetプロパティの詳細については、javax.sql.RowSet インタフェースのマニュアル (JDBC 3.0 仕様にて提供) を参照イベント通知 登録済みのイベントリスナーに標準 JavaBeans イベント通知を提供する。準拠実装によって生成された標準 RowSet イベントの登録および処理方法の詳細については、javax.sql.RowSetEvent インタフェースのマニュアル (JDBC 3.0 仕様にて提供) を参照 RowSet オブジェクトのコマンドの設定 RowSet コマンドパラメータを設定する設定メソッドの完全なセットを提供する ストリーム ストリーム型を指定するための一連の定数のほか、ストリームインスタンスの格納フィールドを提供する
JdbcRowSet は、常に元のデータソースに接続している必要がある RowSet オブジェクトを記述します。JdbcRowSet の実装は、この接続が JDBC ドライバのみによって提供されていることを確認する必要があります。また、JdbcRowSet インタフェースの実装になっており、接続環境で動作する RowSet オブジェクトは、RowSetReader オブジェクトや RowSetWriter オブジェクトの取得に SyncFactory を使用しません。これらは、配下の更新およびスクロール可能な ResultSet 実装により、JDBC ドライバを利用してニーズを満たすことができます。
CachedRowSet オブジェクトなど、未接続の RowSet オブジェクトは、SyncFactory によって提供される SyncProvider オブジェクトに接続管理を委譲する必要があります。完全に未接続にするためには、すべての未接続の RowSet オブジェクトは、RowSet オブジェクトの生成に利用された元のデータソース接続がクローズし、ガベージコレクタがリソースを復元および解放できる状態になっていることを確認する必要があります。SyncProvider オブジェクトは、同期が必要なときにデータソース接続を再度確立するため、重要な JDBC プロパティが保持されていることを確認します。したがって、未接続の RowSet オブジェクトは、Connection オブジェクト上に外部参照がないことを確認する必要があります。
RowsetMetaDataImpl クラスは、RowSetMetaData インタフェースの実装を提供するユーティリティクラスであり、接続されているか未接続であるかどうかに関係なく、すべての RowSet オブジェクトのメタデータに標準の設定メソッド実装を提供します。すべての実装は、この標準実装を自由に利用できますが、必ずしも利用する必要はありません。
RowSetWarning クラスは、RowSet 実装に設定可能な警告を提供します。SQLWarning オブジェクトと同様に、RowSetWarning オブジェクトは、メッセージを表示せずに、警告をスローするメソッドを持つオブジェクトにチェーンされます。すべての RowSet 実装は、警告が生成された場合にこのチェーンが発生することと、JdbcRowSet インタフェースか CachedRowSet インタフェースに定義された getRowSetWarnings メソッドから警告を使用できることを確認する必要があります。getRowSetWarnings メソッドを使って警告を取得したあと、RowSetWarning メソッド getNextWarning を呼び出して、チェーンされる警告を取得することができます。警告が返された場合は、それ以上警告が表示されなくなるまで、繰り返し getNextWarning を呼び出すことができます。
Joinable インタフェースは、接続されているか未接続であるかに関係なく、すべての RowSet オブジェクトを、SQL JOIN 操作で JoinRowSet オブジェクトに追加することができます。Joinable インタフェースを実装している RowSet オブジェクトは、一致列の設定、一致列の取得、または一致列の設定解除を行うことができます。JoinRowSet オブジェクトは、RowSet オブジェクトの一致列を、RowSet オブジェクトを追加するための基盤として利用することができます。
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。