主表と二次表の指定
関連項目
CMP Bean をデータベースにマッピングすると、ほとんどの Bean は表に直接マッピングされ、CMP フィールドは、主表または二次表いずれかの列にマッピングされます。Bean を主表にマッピングしたあと、1 つ以上の二次表にマッピングすることもできます。
主表
主表は、マッピングする Bean にもっとも一致度が高い表です。CMP Bean ごとに主表を 1 つ選択する必要があります。
二次表
二次表では、主表に含まれていない列に Bean のフィールドを直接、マッピングできます。この機能は、たとえば、論理オブジェクトを表すデータが複数の表にまたがって分割されている場合などに便利です。
二次表は、関係とは異なります。別の表にある列を同じ Bean 内のフィールドにするときは、二次表を使用します。表の間に論理関係が存在するときは、関係フィールドを使用します。たとえば、別の表の行全体を同じ Bean 内の 1 つのオブジェクトにするには、それを関係でマッピングします。
二次表は、1 つ以上の列によって主表へ関連付けられている必要があり、それらの列の関連する行には、どちらの表にも同じ値が入っている必要があります。このリンクを参照キーと呼びます。通常、このキーは主表内の外部キーです。
IDE における主表と二次表の構成
Sun Java System Application Server の場合は、Sun 構成エディタで主表および二次表を構成できます。これ以外のアプリケーションサーバーに配備する場合は、そのサーバー固有の配備記述子を自分で編集する必要があります。
エンティティー Bean に対する主表と二次表を指定する
- 「プロジェクト」ウィンドウで、EJB モジュールの「構成ファイル」ノードを展開し、sun-cmp-mappings.xml または sun-ejb-jar.xml ファイルをダブルクリックします。
- ファイル (sun-cmp-mappings または sun-ejb-jar.xml) がテキストモードで開かれていると、ビジュアルエディタを開くことができません。その場合は、ソースエディタでテキストモードのすべてのタブを閉じる必要があります。
- Sun 構成エディタで「Sun 構成」ノードを展開し、マッピングするエンティティー Bean を選択します。
- 必要に応じて、Bean に対するデータベーススキーマを指定します。
- 「詳細設定」をクリックします。
- 「データベーススキーマ」ドロップダウンリストからスキーマを選択します。このドロップダウンリストは、プロジェクト内のすべてのデータベーススキーマ (.dbschema) ファイルの一覧です。スキーマがすでに指定されている場合、新しいスキーマを選択すると、そのスキーマを参照している現在のすべてのフィールドマッピングが削除されます。
- 「主表」ドロップダウンリストから主表を選択します。このドロップダウンリストは、Bean のデータベーススキーマ内のすべての表の一覧です。
- 必要に応じて、Bean に対する二次表を指定します。
- 「詳細設定」をクリックします。
- コンボボックスから、二次表として使用する表を選択します。このコンボボックスは、スキーマで使用可能なすべての表の一覧です。二次表を選択すると、主表と二次表の間に外部キーが存在するかどうかが検査されます。表の間に外部キーが存在する場合は、デフォルトでそのキーが参照キーとして表示されます。データベーススキーマで外部キーが定義されていない場合は、2 つの表の間の参照キーを指定する必要があります。
- ダイアログで、主表と二次表から、参照キーとして使用する 1 つ以上の列を選択します。
- 関連項目
- CMP フィールドの定義
- コンテナ管理による関係の管理
- データベースからの CMP エンティティー Bean の生成
- データベーススキーマの取得
- CMP マッピングの構成
- 関係フィールドのマッピング
著作権と商標について