付録A.1 サンプルプロジェクトの概要

ここでは,Developerが提供するサンプルプロジェクト(Bank)の概要を説明します。

<この項の構成>
(1) サンプルプロジェクトの内容
(2) サンプルプロジェクトの前提環境
(3) サンプルプロジェクトの構成
(4) サンプルプロジェクトの提供形態と格納先
(5) サンプルプロジェクトのディレクトリ構成

(1) サンプルプロジェクトの内容

Developerが提供しているサンプルプロジェクト(Bank)は,Webブラウザから入力されたユーザID(User ID)を持つユーザの資金を当座預金口座(Checking Account)から普通預金口座(Savings Account)へ移動させるプログラムです。表示された画面上でユーザIDと取引額(Transaction amount)を入力し,[Transfer]ボタンをクリックすると,指定したユーザの当座預金口座から指定した金額が普通預金口座に送金されます。資金はデータベースで管理され,資金移動時に当座預金口座テーブルと普通預金口座テーブルが更新されます。

このサンプルプロジェクト(Bank)の構成を次に示します。

図A-1 サンプルプロジェクト(Bank)の概要

[図データ]

このサンプルプロジェクト(Bank)では,アノテーションを使用してデータベースに接続します。

指定したユーザID,金額に対して処理を実行します。「Bank」で指定できるユーザIDとユーザごとの初期残高は次の表に示すとおりです。

表A-1 サンプルプロジェクト(Bank)の初期設定

User IDChecking AccountSavings Account
00110,000500
00220,0001,000
00330,0001,500
注※
表示される金額の単位は円です。

サンプルプロジェクトのEJBでは,@Resourceアノテーションでリソースアダプタを取得して,データベースにアクセスします。@Resourceアノテーションの指定内容を次に示します。

また,サーブレット(Webコンテナ)では,@EJBアノテーションでEJBを取得して,EJBにアクセスします。@EJBアノテーションの指定内容を次に示します。

なお,@EJBアノテーションに指定している参照名「BankEJB」は,BankEJBのコードで次のように定義しています。

(2) サンプルプロジェクトの前提環境

付録Aでは,次の環境を前提として,サンプルプロジェクト(Bank)の使用手順を説明します。

(3) サンプルプロジェクトの構成

サンプルプロジェクト(Bank)では,次のプロジェクトを提供しています。

表A-2 サンプルプロジェクト(Bank)が提供するプロジェクト

プロジェクト名概要
Bankエンタープライズアプリケーションプロジェクトです。
Bank_EJBEJBプロジェクトです。サンプルプロジェクト(Bank)のモジュールプロジェクトに指定します。
Bank_Web動的Webプロジェクトです。サンプルプロジェクト(Bank)のモジュールプロジェクトに指定します。
BankDBBatchシンプルプロジェクトです。サンプルプロジェクト(Bank)で使用するテーブルを作成するためのファイルが格納されています。

サンプルプロジェクト(Bank)が提供するプロジェクトの構成は,次のとおりです。

[図データ]

(4) サンプルプロジェクトの提供形態と格納先

Developerは,サンプルプロジェクト(Bank)をzipフォーマットのアーカイブファイル「Bank.zip」として提供しています。Bank.zipは,次のディレクトリに格納されます。

<Developerのインストールディレクトリ>¥ADP¥samples

(5) サンプルプロジェクトのディレクトリ構成

Bank.zipを任意の場所に解凍すると,次のディレクトリ構成になります。

表A-3 サンプルプロジェクト(Bank)のディレクトリ構成

ディレクトリー/ファイル説明
Bankエンタープライズアプリケーションプロジェクトのルート
┣EarContentコンテンツ・フォルダ
┃┣META-INF管理情報を格納するディレクトリ
┃┗application.xml
DDファイル
(J2EEアプリケーション(EAR)の配備記述子)
┗.projectプロジェクト記述ファイル
(Eclipseのプロジェクトの情報を保存)
Bank_EJBEJBプロジェクトのルート
┣ejbModuleソースファイル格納用ディレクトリ
┃┣bankパッケージ・フォルダ
┃┃┗ejbパッケージ・フォルダ
┃┃ ┣BankEJB.java
┃┃ ┃
Javaソースファイル
(EJBプロジェクト用のソースコード)
┃┃ ┣BankIF.java
┃┃ ┃
Javaソースファイル
(EJBプロジェクト用のソースコード)
┃┃ ┗BankItem.java
┃┃ 
Javaソースファイル
(EJBプロジェクト用のソースコード)
┃┗META-INF管理情報を格納するディレクトリ
┃ ┗MANIFEST.MFマニフェストファイル
┣.classpath
クラスパスファイル
(プロジェクトのクラスパスを保存)
┗.projectプロジェクト記述ファイル
(Eclipseのプロジェクトの情報を保存)
Bank_WebWebプロジェクトのルート
┣srcソースファイル格納用のディレクトリ
┃┗bankパッケージ・フォルダ
┃ ┗servletパッケージ・フォルダ
┃  ┣BankServlet.javaJavaソースファイル
┃  ┗BankServletException.javaJavaソースファイル
┣WebContentWebルートフォルダ
┃┣META-INF管理情報を格納するディレクトリ
┃┃┗MANIFEST.MFマニフェストファイル
┃┣WEB-INF
┃┃┃
Webクライアントから直接アクセスできないファイルを格納するディレクトリ
┃┃┣libライブラリ格納用ディレクトリ
┃┃┗web.xml
┃┃
DDファイル
(Webアプリケーションの配備記述子)
┃┣bank.jsp
┃┃
JSPファイル(IDと数値を入力して,Servletに送信する)
┃┣error_500.jspJSPファイル(エラーを表示する)
┃┗index.jsp
JSPファイル(サンプルプロジェクトの入り口となり,Servletを呼び出す)
┣.classpath
クラスパスファイル
(プロジェクトのクラスパスを保存)
┗.projectプロジェクト記述ファイル
(Eclipseのプロジェクトの情報を保存)
BankDBBatch
サンプルプロジェクトのルート
┣bank_tblcreate.bat
バッチファイル
(テーブル作成バッチファイル)
┣Insert_BankTable_
┃ Control_checking
コントロールファイル
(checkingテーブルのコントロールファイル)
┣Insert_BankTable_
┃ Control_saving
コントロールファイル
(savingテーブルのコントロールファイル)
┣Insert_BankTable_
┃ Input_checking
データファイル
(checkingテーブルのデータファイル)
┣Insert_BankTable_
┃ Input_saving
データファイル
(savingテーブルのデータファイル)
┣tablecreate
SQLファイル
(テーブルのスキーマ定義SQLファイル)
┗.projectプロジェクト記述ファイル
(Eclipseのプロジェクトの情報を保存)