「コンテナ管理による持続性 (CMP)」という用語は、エンティティー Bean が必要とするあらゆるデータベースアクセスを EJB コンテナが処理することを意味します。J2EE 1.4 仕様にコーディングするときは、sun-cmp-mapping.xml ファイルの表にマップされたCMP エンティティー Bean を作成します。このため、エンティティー Bean のコードには、データベースアクセス (SQL) 呼び出しは含まれません。この結果、Bean のコードは、特定の持続的記憶領域機構 (データベース) に縛られません。この柔軟性により、使用するデータベースが異なる J2EE サーバーに同じエンティティー Bean を再配備する場合でも、Bean のコードを変更、再コンパイル必要はありません。つまり、エンティティー Bean の移植性が向上します。
データアクセス呼び出しを生成するには、Bean の持続フィールドと関係を定義したスキーマが必要です。CMP エンティティー Bean には、データベースの構造が反映されます。Bean の CMP フィールドはデータベース表の列に対応し、関係フィールドはデータベースの外部キーに対応します。
Sun Java System Application Server に配備する場合、IDE には、CMP マッピングの生成と構成を支援する機能が用意されています。これ以外のアプリケーションサーバーに配備する場合は、そのサーバー固有の配備記述子を編集することによって、CMP マッピングを自分で構成する必要があります。
IDE で CMP マッピングを操作する方法は、3 つあります。