ページの先頭行へ戻る
 Apcoordinator入門ガイド
FUJITSU Software

4.2.3 EntityBeanの作成

ここでは以下の3つのEntitiyBeanを作成します。

注意

このチュートリアルの手順でEntityBeanを作成するには、あらかじめデータベースにテーブルが作成されており、開発環境からアクセスできるようになっている必要があります。

Symfoware(R) Serverを使用してデータベースを登録する手順は、以下に記載されています。

4.4.1 Symfowareへのテーブルの登録

以下の手順は、開発環境からデータベースのテーブルにアクセスできるようになったあとで実施してください。

また、プロジェクトのビルドパスに[Symfoware JDBCドライバインストールフォルダ]\lib\fjsymjdbc2.jarが必要です。

Interstage Studioの[ファイル]メニューの[プロパティ] > [Javaのビルドパス]を選択し、[ライブラリタブ]の[外部JARの追加]をクリックしビルドパスに追加してください。

RoomresvEJBCMPreserveの作成

RoomresvEJBCMPreserveは、データベースの「TRESERVE」テーブルを使用するEntityBeanです。

  1. Interstage Studioの[ファイル] > [新規]メニューの[その他]を選択します。

    [EJB] > [J2EE] > [Enterprise Bean]を選択し、[次へ]をクリックします。

  2. [Enterprise Bean]画面では、以下を入力し、[次へ]をクリックします。

    項目

    設定内容

    デフォルト設定値

    ソースフォルダ

    (デフォルト設定値)

    roomresvEJB/ejbModule

    パッケージ

    (デフォルト設定値)

    roomresv.ejb

    名前

    "RoomresvEJBCMPreserve"を指定

    (なし)

    Enterprise Bean種別

    "EJB2.x Container-managed persistence Entity Bean"を選択

    "Stateless Session Bean"が選択

  3. [Container-managed persistence Entity Bean]画面では、以下を入力し、[次へ]をクリックします。

    項目

    設定内容

    デフォルト設定値

    トランザクション管理種別

    (デフォルト設定値)

    "Container"が選択

    リエントラントにする

    (デフォルト設定値)

    チェックマークなし

    Recordクラスでデータの取得/設定を行う

    (デフォルト設定値)

    チェックマーク付

    データソース名

    jdbc/roomresvCMP

    (なし)

    Home/Remoteインタフェースを生成する

    チェックマーク付

    チェックマークなし

    LocalHome/Localインタフェースを生成する

    チェックマークなし

    チェックマーク付

  4. [永続化フィールド定義]画面では、永続化するフィールドを指定します。ここで、データベースに接続してテーブルの情報を取得することができます。[DB参照]をクリックします。

  5. 接続データベースを選択します。

    データベース開発パースペクティブで作成済の一覧から選択します。新規に接続データベースを追加する場合は、[接続の追加]より接続データベースを追加作成します。

    [OK]をクリックします。

  6. 永続化するフィールドを選択します。

    データベースに接続が成功すると、スキーマ・テーブル・フィールドの情報が表示されます。

    ここでは「ROOMRSDB」データベースの「TRESERVE」テーブルのすべてのフィールドを選択するよう、「TRESERVE」テーブルにチェックします。

    [OK]をクリックします。

  7. Primary Keyとget/setメソッドの対象フィールドを選択し、[次へ]をクリックします。

    フィールド名

    Primary Key

    String

    resvid

    チェックマーク付

    String

    resvdate

    チェックマークなし

    String

    resvstart

    チェックマークなし

    String

    resvend

    チェックマークなし

    String

    resvcomment

    チェックマークなし

    String

    userid

    チェックマークなし

    String

    roomid

    チェックマークなし

  8. [ejbCreateメソッド定義]画面のメソッド一覧に「ejbCreate(RoomresvEJBCMPreserveRecord)」が表示されていることを確認し、[次へ]をクリックします。

  9. [Finderメソッド定義]画面のメソッド一覧に「findByPrimaryKey(RoomresvEJBCMPreservePrimaryKey)」が表示されています。これに以下の2つのメソッドを追加します。

    メソッド名

    戻り値の型

    パラメタリスト

    検索条件

    変数名

    findAll

    java.util.Collection

    findByDate

    java.util.Collection

    param1

    String

    SELECT OBJECT(r) FROM RoomresvEJBCMPreserve AS r WHERE r.resvdate = ?1

    注) 検索条件は折り返さずに一行で記入してください。

    追加の手順は以下のとおりです。

    1. [追加]をクリックします。

    2. メソッド名、戻り値の型、パラメタリスト、検索条件を指定します。

      [パラメタ追加]をクリックすると、パラメタリストに変数を追加することができます。

      入力後、[OK]をクリックします。

      表示内容を確認し、[次へ]をクリックします。

  10. [Homeメソッド定義画面]のメソッド一覧が空欄であることを確認し、[次へ]をクリックします。

  11. [ejbSelectメソッド定義]画面のメソッド一覧が空欄であることを確認し、[次へ]をクリックします。

  12. [ビジネスメソッド定義]画面のメソッド一覧が空欄であることを確認し、[完了]をクリックします。

注意

RoomresvEJBCMPreserve_ROOMRSDB.dbschema、RoomresvEJBCMProom_ROOMRSDB.dbschema、RoomresvEJBCMPuser_ROOMRSDB.dbschemaファイルを作成する必要があります。

  • データベースの種類がOracleの場合、EJBコンテナは配備時にデータベースにアクセスして、テーブルのスキーマ情報を自動的に取得します。プロジェクトのソースフォルダに自動的に生成されたdbschemaファイルを利用してください。

  • データベースの種類がSymfowareの場合、以下のコマンドを使用して、このファイルを取得してください。

    capture-schema -username ユーザ名 -password パスワード
     -dburl jdbc:symford://ホスト名:ポート番号/データベース名 
     -driver com.fujitsu.symfoware.jdbc.SYMDriver -schemaname スキーマ名
     -table テーブル名 -out dbschemaファイル名

RoomresvEJBCMProomの作成

RoomresvEJBCMProomは、データベースの「TROOM」テーブルを使用するEntityBeanです。

RoomresvEJBCMPreserveの作成手順と同様に、作成してください。

手順の変更点は以下です。

RoomresvEJBCMPuserの作成

RoomresvEJBCMPuserは、データベースの「TUSER」テーブルを使用するEntityBeanです。

RoomresvEJBCMPreserveの作成手順と同様に、作成してください。

手順の変更点は以下です。