[トライアル版連動企画]
Webアプリケーションの作成が一通り理解できる基礎講座


初めてJavaを使ってWebアプリケーションを構築するプログラマのために、アプリケーションサーバの環境構築からServlet、JSP、さらに踏み込んだところでEJBによるプログラミング、デバッグの方法などを計5回の連載で解説します。
一通り学び終わると、Webアプリケーションプログラミングの全体がすっきり見渡せるようになります。
藤井 等
ボーランド株式会社
2001/1/31

第4回 エンティティBeanでDBのデータをマッピングする

 今回は、EJB開発の第2回。エンティティBeanの開発を行う。JBuilder 4でEJB開発を行うための環境設定については、前回の記事を参照してほしい(なお、製品をお持ちでない方は第1回の記事を参照してトライアル版を入手してほしい)。

 データベースの準備

 エンティティBeanは、データベースデータをマッピングするBeanである(エンティティBeanの役割についてはこちらの記事を参考にしてほしい)。今回は、JBuilderのエンティティBeanモデラを使って、既存のデータベースのデータをマップしたBeanを自動生成する。使用するテーブルは、以下の2つである。

CATEGORY
データ型 プライマリキー
CATEGORY_NO INTEGER NOT NULL
NAME VARCHAR(64)   

PRODUCT
データ型 プライマリキー
CODE VARCHAR(20) NOT NULL
CATEGORY_NO INTEGER   
NAME VARCHAR(64)   
PRICE DOUBLE   

 JBuilderに含まれるJDataStore用のデータベースファイルを用意した。今回の学習に使用するプログラムファイル名はpricelist.zipである。ファイル名をクリックしてダウンロードし、任意のディレクトリに展開してほしい。

 エンティティBeanモデラ

 はじめに、新規プロジェクトを作成する。[必須ライブラリ]には、必ずInprise Application Server 4.1ライブラリを追加する。次に、EJBグループを作成する。ここでは、pricelistという名前を設定する。

 次に、[ファイル|新規]メニューを選択し、[エンタープライズ]ページの[EJBエンティティBeanモデラ]ウィザードを実行する。最初のステップでは、作成したEJBグループを選択する。次に、使用するJDBCデータソースを指定する。

項目
ドライバ com.borland.datastore.jdbc.DataStoreDriver
URL jdbc:borland:dslocal:(展開したディレクトリ)/pricelist.jds
ユーザー名 (任意)
パスワード (任意)
拡張プロパティ なし
JNDI名 DataSource

画面1 JDBCデータソースの指定 (クリックすると拡大します)

 [次へ]ボタンを押すと、ウィザードはデータベースへ接続し、テーブルの一覧を表示する。ここで使用するテーブルを選択する。CATEGORYとPRODUCTを選択して、[次へ]ボタンを押す。次のステップでは、テーブルのリンクを設定するCATEGORYテーブルからPRODUCTテーブルへマウスをドラッグすると、「テーブルリンク」ダイアログが表示されて、リンクを設定できる。

画面2 テーブルのリンク (クリックすると拡大します)

 次の項目では、列のマップを定義する。ここでは、すべての定義をデフォルトのまま設定する。[次へ]ボタンを押し、生成するクラスの情報を定義する。[テーブル名]項目の選択を切り替えると、対応するクラスの情報が表示される。

画面3 パッケージ/クラス/名前の指定 (クリックすると拡大します)

 ここでも、デフォルトの設定を適用する。最後のステップでは、生成オプションを設定する。次のように、コンテナ管理型永続性(CMP)を選択する。

項目
エンティティBeanタイプ コンテナ管理型永続性(CMP)
コードスタイル EJB 1.1 jdbc:borland:dslocal:(展開したディレクトリ)/pricelist.jds
ホームインターフェイスに
findAll()メソッドを生成
(チェックする)
ヘッダコメントの生成 (チェックしない)

画面4 生成オプションの指定 (クリックすると拡大します)

 ウィザードを終了すると、以下のクラスがプロジェクトに追加される。

ファイル
説明
Category.java Category Beanのリモートインターフェイス
CategoryBean.java Category Beanの実装クラス
CategoryHome.java Category Beanのホームインターフェイス
Product.java Product Beanのリモートインターフェイス
ProductBean.java Product Beanの実装クラス
ProductHome.java Product Beanのホームインターフェイス

 さらに、配布ディスクリプタには、必要な定義が追加されている。

 プロジェクトペインで、CategoryHome.javaを選択し、マウスの右ボタンを押して[プロパティ]メニューを実行する。[ビルド]-[VisiBroker]の[IIOPの生成]をチェックして[OK]ボタンを押す。同じ設定をProductHome.javaにも行う。

クライアントの開発

JBuilderで学ぶWebアプリケーション構築(第4回)
■データベースの準備
■エンティティBeanモデラ
  
  ■クライアントの開発
 JSP Beanを作成する
 JSPを作成する
  ■アプリケーションの実行
 開発環境内での実行
 Interbase Application Serverへの配布


連載記事一覧




Java Agile フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Java Agile 記事ランキング

本日 月間