CMP マッピングについて

関連項目

「コンテナ管理による持続性 (CMP)」という用語は、エンティティー Bean が必要とするあらゆるデータベースアクセスを EJB コンテナが処理することを意味します。J2EE 1.4 仕様にコーディングするときは、CMP エンティティー Beans を作成し、続いてデータベースの表にエンティティー Beans がどのようにマッピングされるかを、に記述します。

Sun Java System Application Server/GlassFish に配備している場合、EJB モジュールの CMP マッピングは、モジュールの src/conf ディレクトリにある sun-cmp-mappings.xml 記述子ファイルで指定されます。CMP エンティティー Beans をデータソースから生成する場合、CMP エンティティー Beans の作成時に IDE によって sun-cmp-mappings.xml が生成されます。CMP マッピングを編集するには、XML エディタで sun-cmp-mappings.xml を開く必要があります。

sun-cmp-mapping.xml 記述子ファイルには、エンティティー Beans、CMP フィールド、および CMR 関係がどのようにデータベースにマップされるかが記述されています。このため、エンティティー Bean のコードには、データベースアクセス (SQL) 呼び出しは含まれません。この結果、Bean のコードは、特定の持続的記憶領域機構 (データベース) に縛られません。この柔軟性により、使用するデータベースが異なる J2EE サーバーに同じエンティティー Bean を再配備する場合でも、Bean のコードを変更、再コンパイル必要はありません。これによりエンティティー Beans の移植性が向上します。

データアクセス呼び出しを生成するには、Bean の持続フィールドと関係を定義したスキーマが必要です。CMP エンティティー Bean には、データベースの構造が反映されます。Bean の CMP フィールドはデータベース表の列に対応し、関係フィールドはデータベースの外部キーに対応します。

IDE における CMP マッピングの構成

Sun Java System Application Server に配備する場合、IDE には、CMP マッピングの生成を支援する機能が用意されています。これ以外のアプリケーションサーバーに配備する場合は、そのサーバー固有の配備記述子を編集することによって、CMP マッピングを自分で構成する必要があります。

IDE で CMP マッピングを操作する方法は、3 つあります。

CMP エンティティー Bean 仕様についての詳細な説明は、『Enterprise JavaBeans Specification, v2.1』を参照してください。

関連項目
CMP フィールドの定義
データベースからの CMP エンティティー Bean の生成
コンテナ管理による関係の管理
データベーススキーマの取得
CMP マッピングの構成
関係フィールドのマッピング
配備時のデータベース表の生成

著作権と商標について