主表と二次表の指定

関連項目

CMP Bean をデータベースにマッピングすると、ほとんどの Bean は表に直接マッピングされ、CMP フィールドは、主表または二次表いずれかの列にマッピングされます。Bean を主表にマッピングしたあと、1 つ以上の二次表にマッピングすることもできます。

主表

主表は、マッピングする Bean にもっとも一致度が高い表です。CMP Bean ごとに主表を 1 つ選択する必要があります。

二次表

二次表では、主表に含まれていない列に Bean のフィールドを直接、マッピングできます。この機能は、たとえば、論理オブジェクトを表すデータが複数の表にまたがって分割されている場合などに便利です。

二次表は、関係とは異なります。別の表にある列を同じ Bean 内のフィールドにするときは、二次表を使用します。表の間に論理関係が存在するときは、関係フィールドを使用します。たとえば、別の表の行全体を同じ Bean 内の 1 つのオブジェクトにするには、それを関係でマッピングします。

二次表は、1 つ以上の列によって主表へ関連付けられている必要があり、それらの列の関連する行には、どちらの表にも同じ値が入っている必要があります。このリンクを参照キーと呼びます。通常、このキーは主表内の外部キーです。

IDE における主表と二次表の構成

Sun Java System Application Server の場合は、Sun 構成エディタで主表および二次表を構成できます。これ以外のアプリケーションサーバーに配備する場合は、そのサーバー固有の配備記述子を自分で編集する必要があります。

エンティティー Bean に対する主表と二次表を指定する

  1. 「プロジェクト」ウィンドウで、EJB モジュールの「構成ファイル」ノードを展開し、sun-cmp-mappings.xml または sun-ejb-jar.xml ファイルをダブルクリックします。
  2. Sun 構成エディタで「Sun 構成」ノードを展開し、マッピングするエンティティー Bean を選択します。
  3. 必要に応じて、Bean に対するデータベーススキーマを指定します。
    1. 「詳細設定」をクリックします。
    2. 「データベーススキーマ」ドロップダウンリストからスキーマを選択します。このドロップダウンリストは、プロジェクト内のすべてのデータベーススキーマ (.dbschema) ファイルの一覧です。スキーマがすでに指定されている場合、新しいスキーマを選択すると、そのスキーマを参照している現在のすべてのフィールドマッピングが削除されます。
  4. 「主表」ドロップダウンリストから主表を選択します。このドロップダウンリストは、Bean のデータベーススキーマ内のすべての表の一覧です。
  5. 必要に応じて、Bean に対する二次表を指定します。
    1. 「詳細設定」をクリックします。
    2. コンボボックスから、二次表として使用する表を選択します。このコンボボックスは、スキーマで使用可能なすべての表の一覧です。二次表を選択すると、主表と二次表の間に外部キーが存在するかどうかが検査されます。表の間に外部キーが存在する場合は、デフォルトでそのキーが参照キーとして表示されます。データベーススキーマで外部キーが定義されていない場合は、2 つの表の間の参照キーを指定する必要があります。
    3. ダイアログで、主表と二次表から、参照キーとして使用する 1 つ以上の列を選択します。
関連項目
CMP フィールドの定義
コンテナ管理による関係の管理
データベースからの CMP エンティティー Bean の生成
データベーススキーマの取得
CMP マッピングの構成
関係フィールドのマッピング

著作権と商標について