「新規」ギャラリ - 「Business Tier」 - 「Enterprise JavaBeans(EJB)」カテゴリ

「新規」ギャラリの「Business Tier」->「Enterprise JavaBeans(EJB)」カテゴリから、新規のEnterprise JavaBeans(EJB)を作成します。作成するEJBのタイプを選択し、「OK」をクリックします。プロジェクトで最初のEJBを作成している場合は、EJBモジュールが作成されます。すでに既存のEJBモジュールがある場合は、新規のEJBがそのモジュールに追加されます。

EJBデプロイメント・ディスクリプタ(ejb-jar.xml)
標準のJ2EE EJBモジュール・デプロイメント・ディスクリプタ(ejb-jar.xml)にデプロイ時の設定を含めるテンプレートを作成します。
EJBデプロイメント・ディスクリプタ - JBoss用(jboss.xml)
JBossデプロイメント・ディスクリプタ(jboss.xml)にデプロイ時の設定を含めるテンプレートを作成します。
EJBデプロイメント・ディスクリプタ - OC4J用(orion-ejb-jar.xml)
OC4Jプラットフォーム固有のEJBデプロイメント・ディスクリプタ(orion-ejb-jar.xml)にデプロイ時の設定を含めるテンプレートを作成します。
EJBデプロイメント・ディスクリプタ - WebLogic用(weblogic-ejb-jar.xml)
BEA WebLogicプラットフォーム固有のEJBデプロイメント・ディスクリプタ(weblogic-ejb-jar.xml)にデプロイ時の設定を含めるテンプレートを作成します。
Entity Bean
Enterprise JavaBeanウィザードが起動します。このウィザードは、データベース表の生成や、Bean管理の永続性(BMP)エンティティBeanの作成に使用される、コンテナ管理の永続性(CMP)エンティティBeanを作成する際に使用します。

エンティティBeanは、データベース内の永続データと、そのデータに働きかけるメソッドを表します。リレーショナル・データベースの場合には、表の各行に対して1つのBeanが存在します。レコードに対する各エンティティBeanは、一意の主キーにより識別されます。エンティティBeanを作成する場合、Enterprise JavaBeanウィザードではcreate()メソッドおよびその主キーを使用してエンティティBeanを作成します。

エンティティBeanでは、独自に永続性を管理する(Bean管理の永続性、BMP)か、コンテナに永続性を管理させます(コンテナ管理の永続性、CMP)。

CMP Entity Bean(表ベース)
CMPエンティティBean作成(表ベース)ウィザードを起動します。このウィザードは、既存のデータベース表からコンテナ管理の永続性(CMP)エンティティBeanを作成する際に使用します。

CMPエンティティBeanでは、永続性に関するタスクがそのコンテナに委譲されるため、EJBのビジネス・ロジックの開発に専念できます。JDeveloperを使用してエンティティBeanをデプロイする場合、デプロイメント・ディスクリプタにおけるCMPフィールドと、そのデータベースへのマップ方法がJDeveloperにより識別されます。エンティティBeanを永続させるために必要なロジックは、コンテナにより生成されます。

データベースにマップされるフィールドは、コンテナ管理のフィールドと呼ばれます。これらのフィールドは、任意のJavaプリミティブ型にすることも、EJBモジュール・エディタで作成および管理が可能なシリアライズ可能オブジェクトにすることもできます。

Message-Driven Bean
Enterprise JavaBeanウィザードが起動します。このウィザードは、Message-Driven Beanを作成する際に使用します。

Message-Driven Beanは、カンバセーショナル・ステートがなく、複数のクライアントからのメッセージを同時に処理できるという点でステートレス・セッションBeanと似ています。ただし、ステートレス・セッションBeanと異なり、Message-Driven Beanにはインタフェースがなく、Beanクラスのみがあります。クライアントからのアクセスにインタフェースは使用されません。

Session Bean
Enterprise JavaBeanウィザードが起動します。このウィザードは、ステートフル・セッションBeanおよびステートレス・セッションBeanを作成する際に使用します。

セッションBeanはクライアントにより作成され、1セッションの間のみ存続します。セッションBeanは、データベースの読取り、書込みまたは更新などの操作をクライアントにかわって実行しますが、データベースに格納されるデータを表すわけではありません。セッションBeanはトランザクション対応にできます。ただし、永続的ではないため、システム・クラッシュ後のリカバリは不可能です。

セッションBeanをステートフルにした場合、カンバセーショナル・ステートをメソッド間およびトランザクション間で維持できます。ステート(状態)とは、セッションBeanとそのクライアントとの間におけるカンバセーション(対話)を説明する用語です。EJBコンテナが、セッションBeanのカンバセーショナル・ステートを管理し、不要になった時点でセッションBeanを破棄します。


関連項目

Enterprise JavaBeansの開発