Interstage Application Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第3部 EJB編> 第26章 Entity Bean編> 26.1 Entity BeanのEJBアプリケーションの概要> 26.1.2 EJBアプリケーションを作成するにあたって

26.1.2.2 CMP定義

 CMPのEntity Beanでは、6つのクラスファイルを作成するほかに、データベースとアクセスするための以下2つの情報を定義します。

定義情報

内容

CMF定

Entity Beanの永続化フィールドとデータベースのカラムの対応づけを行います。この永続化フィールドをCMF(Container managed field)と呼びます。

CMP1.1の場合

finder定

finderメソッドの検索条件をSQLのWHERE句の形式で定義します。検索条件は、単一のテーブルを対象とした検索とORDER BY句を使用した検索が利用できます。

CMP2.0の場合

relationship定義

データベースのテーブル間の関連づけを行います。このデータベースのテーブルとテーブルの間の関係を、relationship(リレーション)と呼びます。

CMP2.0の場合

クエリ定義

FROM句やSELECT句(WHERE句)を使用した、1つまたは複数のEJBオブジェクトを検索する文をEJB QL文として定義できます。

 CMP定義を行うことで、CMPのEnterprise Beanにデータベース操作文を記述する必要がなくなります。

■ CMP1.1の処理イメージ

 以下に例として、口座引き落とし処理を例にして、CMP1.1のEntity Beanを利用した処理イメージを示します。

image

  1. 呼出し元Beanは、口座NOを指定してfinderメソッドを呼び出し、Entityオブジェクトの検索をコンテナに依頼します。
  2. 検索結果は、コンテナにより、Entityオブジェクトとして保持されます。
  3. 呼出し元Beanは、支払金額に10万を設定し、ビジネスメソッド(Cal_bal)を呼び出します。
  4. コンテナは、2.で保持した検索結果データをCMFへ転送し、ビジネスメソッドを呼び出します。
  5. ビジネスメソッドは、Amount(残高)を更新します。
  6. 呼出し元Beanからのcommit指示により、コンテナはデータベースの更新を実施します。

■ 定義する項目

CMF定義

項目

内容

データソース名

DBアクセス環境定義で登録するデータソース名を指定します。

スキーマ名

使用するデータベースのスキーマ名を指定します。

デーブル名

使用するテーブル名を指定します。

DBカラム名

永続化フィールドと対応付けるDBカラム名を指定します。

finder定義(CMP1.1の場合)

項目

内容

検索条件

finderメソッドの検索条件を指定します。

リレーション定義(CMP2.0の場合)

項目

内容

スキーマ名

リレーションが1:多、多:多の場合に使用するJoinテーブルのスキーマ名を指定します。

テーブル名

リレーションが1:多、多:多の場合に使用するJoinテーブル名を指定します。

カラム名

リレーションのあるEJBアプリケーションの外部キーと対応付けるDBカラム名を指定します。

クエリ定義(CMP2.0の場合)

項目

内容

検索メソッド名

検索するメソッドの(finder/select)を指定します。

検索メソッドパラメータ

クエリ内のパラメータの型を指定します。

返却EJBオブジェクト型

selectメソッドが返すオブジェクト(LocalまたはRemote)を指定します。デフォルト値はLocalです。

EJB QL文

検索メソッドに対応するEJB QL文を指定します。

■ 定義方法

◆ CMP1.1の場合

 CMP定義は、カストマイズツールのCMFマッピング定義タグ(図1)とfinderメソッド定義タグ(図2)で設定します。

 設定方法の詳細は、“CMFマッピング定義タグ”と“finderメソッド定義タグ”を参照してください。

図1 カストマイズツールのCMF1.1マッピング定義タグ

image

図2 カストマイズツールのfinderメソッド定義タグ

image

 Apworksを使用してEJBアプリケーションの開発を行う場合、ApworksのApdesignerのEJB Deployment Descriptorエディタ、または、コンポーネントデザイナのdeployment descriptorファイル編集(注:Plus Developerでは提供していません)を使用して定義することもできます。
 詳細については、Apworksの"Apdesigner プログラマーズガイド"または"コンポーネントデザイナ ユーザーズガイド"(注:Plus Developerでは提供していません)を参照してください。

◆ CMP2.0の場合

 CMP定義は、カストマイズツールのCMFマッピング定義タグ(図1)とリレーションタグ(図2)、およびクエリタグ(図3)で設定します。

 設定方法の詳細は、“CMFマッピング定義タグ”と“リレーションタグ”および“クエリタグ”を参照してください。

図1 カストマイズツールのCMF2.0マッピング定義タグ

image

図2 カストマイズツールのリレーションタグ

image

図3 カストマイズツールのクエリタグ

image

 クエリはEJBアプリケーション作成時にあらかじめ定義しておいてください。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 2006