Enterprise JavaBeans Data Mediator Service

Enterprise JavaBeans (EJB) Data Mediator Service (DMS) は、 サービス・データ・オブジェクト (SDO) Java™ インターフェースで、EJB 照会の形での要求を受けて、データを各種タイプの DataObject を含む DataGraph としてデータを戻します。

これは、通常の EJB finder または ejbSelect メソッドとは異なり、EJB 照会は受けるけれども、すべて同じタイプの EJB オブジェクトのコレクションまたはコンテナー管理パーシスタンス (CMP) 値のコレクションを返します。

EJB DMS では、データ・オブジェクト (DataObject) のデータ・グラフ (DataGraph) を戻す EJB 照会を指定することができます。照会は、EJB 照会ステートメントのストリング配列に含まれる複合 EJB 照会として表すことができます。DataGraph を使用する利点の 1 つは、コピー・ヘルパー・オブジェクトの作成、データ追加、および更新を行うよう EJB ファサード・セッション Bean で記述されたコードの多くを、DataGraph および DMS に置き換えられることです。
重要: EJB DMS は、EJB2.x コンテナー管理パーシスタンス (CMP) エンティティー Bean のみをサポートします。EJB 3.x モジュールはサポートしません。

DataGraph は、getGraph 呼び出しを使用して取得できます。 これは、コンテナーにキャッシュされた EJB インスタンスから行うか、照会要求を SQL にコンパイルしてデータ・ソースに直接実行して行います。

更新された DataObject は、2 つのいずれかの方法で、applyChanges メソッドを使用して、データ・ストアに書き戻すことができます。 更新は SQL に変換して、直接データ・ソースに適用するか、EJB accessor メソッドにより書き戻すことができます。データ・ストアに直接書き戻すことで、EJB の活動化を行わずに済むため、パフォーマンスを向上できます。ただし、ビジネス・ロジックまたは EJB コンテナー機能をアプリケーションで必要とする場合は、EJB により書き戻すのが好ましい方法です。EJB により書き戻す場合は、ユーザー定義の MediatorAdapter メソッドを指定して、変更された DataObject の処理をカスタマイズすることができます。カスタマイズとしては、アプリケーション固有のオプティミスティック並行性制御や、EJB でのビジネス・メソッドの呼び出しによる更新の実行、DataObject の計算済みの値の更新、および EJBHome でのアプリケーション固有の create メソッドの呼び出しがあります。

更新処理は、DataGraph が最初にどのように検索されたかには依存しません。すなわち、DataGraph をデータ・ソースから直接検索する一方で、エンタープライズ Bean により据え置き更新を適用するか、またはその逆が可能です。

いずれの更新方法でも、オプティミスティック並行性制御アルゴリズムが使用されます。更新時には、整合性フィールドとして指定されたフィールドが読み取られ、現行値が DataObject フィールドの古い値と等しいことが確認されます。

ランタイム処理

EJB Mediator 要求は、複合 EJB 照会であり、通常の EJB 照会の番号付きリストで構成されます。複合照会の各照会が SDO を定義します。照会の SELECT 文節は、DataObject で戻す CMP フィールドまたは式を指定します。WHERE 文節は、フィルター条件を指定します。 リストの最初の照会は、DataGraph の ROOT ノードとみなされます。照会の FROM 文節 (最初のもの以外) は、DataObject 間の参照の作成に使用される EJB 関係を指定します。 照会からの DataGraph スキーマの派生についての詳細は、トピック『DataGraph スキーマ』に記載されています。


トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cejb_ejbmed
ファイル名:cejb_ejbmed.html