サンプル 7b:BMP を使用した複雑な処理

サンプル 7b では、サンプル データベースと Bean 管理パーシスタンスを併用します。

次の表は、サンプル 7b で使用されるスキーマの定義です。
テーブル
フィールド
JDBC の種類
規則
account
id
INTEGER
NOT NULL

value
INTEGER
NOT NULL
bank
name
VARCHAR (16)
NOT NULL

type
INTEGER
NOT NULL

funds
FLOAT
NOT NULL

loans
FLOAT
NOT NULL
customer
name
VARCHAR (16)
NOT NULL

password
VARCHAR (16)
NOT NULL

type
INTEGER
NOT NULL

rating
INTEGER
NOT NULL DEFAULT 0

worth
FLOAT
NOT NULL

handle
VARBINARY (128)
NULL DEFAULT NULL

installment
FLOAT
NOT NULL

/sample7b/ejbeans ディレクトリにある BankBean.java ファイルを確認します。多くのメソッドに SQL 関連の参照があります。

サンプルを開始します。次のコマンドを入力します。JRun のルート ディレクトリは、JRun インストール ディレクトリに置き換えてください。

bash$ export JRUN_HOME=JRun のルート ディレクトリ
bash$ cd JRun のルート ディレクトリ/samples/sample7b

既定の PointBase ドライバ以外の JDBC ドライバを使用している場合は、次のコマンドを入力します。ドライバの正しいパスを入力してください。

bash$ export JDBC_DRIVERS=/path/ドライバ名

次のコマンドを入力します。

bash$ make jars 
bash$ make deploy
bash$ make standalone

別のコマンド プロンプト ウィンドウで、クライアントを起動します。

bash$ make simulate host=ホスト名 first=0 last=10 inheritance=1000

このコマンドを実行すると、サーバによって 0 から 10 までの ID を持った 11 の同時実行 Customer が作成されます。サーバ ポートを 2323 以外 (2324 など) に変更した場合は、次のコマンドを入力します。

bash$ make simulate host=ホスト名:2324 first=0 last=10 inheritance=1000

もう一度シミュレーションを実行します。別の Customer を入力するか、または inheritance の値を変更します。

サンプルを 100 の Customer で実行すると、1000 のローンと約 10,000 の支払いが発生することになりますが、正確な数は Loan.properties 内のローン期間に対する ejb.sessionTimeout 設定によって異なります。1000 の Customer でサンプルを実行します。

別のコマンド ウィンドウを開き、次のコマンドを入力して追加クライアントを実行します。JRun のルート ディレクトリは、実際の JRun インストール ディレクトリに置き換えてください。

bash$ export JRUN_HOME=JRun のルート ディレクトリ
bash$ cd JRun のルート ディレクトリ/samples/sample7b
bash$ make simulate host=localhost first=200 last=210 
inheritance=1000