91-0.EclipseによるJSP・BeansのMVアーキテクチャ(じゃんけん)
サーバとじゃんけんを行うWebアプリケーションをMVモデルで作成します。
BeanをJSPから直接参照します。
これまでのBeanはコンストラクタ引数で値を設定してインスタンス化し、コンストラクタ内で業務ロジックを処理する仕様にしていました。
JSPから直接Beanを呼び出す場合、引数指定のコンストラクタで実体化することはできません。
つまりBeanは引数無しのデフォルトコンストラクタを使ってインスタンス化し、Setterメソッドで値を設定して業務ロジックのメソッドを起動し、結果をgetterメソッドで受け取ることになります。
この時privateで宣言されたクラス変数をプロパティと呼び、set〇〇〇 get〇〇〇の〇〇〇はプロパティと名前が一致しなければなりません。
以下の仕様を実現するJavaアプリケーションを作成し、その処理ロジックをBean化してWebアプリケーションに適用させます。
【仕様】
人間対コンピュータ(サーバ)でじゃんけんを行うWebアプリケーションで作成します。
プログラムの構成はMVアーキテクチャで実現すること。
・人間はメッセージに従いブラウザからグー・チョキ・パーのいずれかを数字で入力する
・0:グー 1:チョキ 2:パー とする
・コンピュータはグー・チョキ・パーのいづれかを乱数を用いて決定する
・人間の出した手とコンピュータの出した手を比較して勝敗の結果をメッセージとして出力する
※勝敗判定ロジック例:hantei = (player-computer+3) % 3;
【じゃんけんBean】クラス図
-------------------------------------- //クラス名
JyankenBean
-------------------------------------- //フィールド(プロパティ)
- player:int //人間の手(0:グー 1:チョキ 2:パー)
- computer:int //コンピュータの手(0:グー 1:チョキ 2:パー)
- hantei:int //勝敗の数字(0:あいこ 1:負け 2:勝ち)
- hanteiStr:String //勝敗のメッセージ(あいこor負けor勝ち)
-------------------------------------- //メソッド
+ JyankenBean() //コンストラクタ
+ jyanken():void //ロジック
+ setPlayer(player:int):void //セッター
+ getPlayer():int //ゲッター
+ getComputer():int //ゲッター
+ getHantei():int //ゲッター
+ getHanteiStr():String //ゲッター
--------------------------------------
- private
+ public
【プロジェクトの作成】
新たにプロジェクトを作成します。プロジェクト名はjyankenとします。
ファイルメニュー→新規→動的Webプロジェクト→プロジェクト名:jyanken
→ターゲットランタイム:Tomcat(Java17)→動的Webモジュールバージョン:4.0→完了
※プロジェクトをTomcatサーバに追加するのを忘れないように!
1.じゃんけんWebアプリケーションの作成(MVモデル)
①じゃんけんロジック用JavaBeansクラスを作成します
jyankenプロジェクトを右クリック→新規→クラス
パッケージ:jp.ict.aso.model
名前:JyankenBean
ソースコード:考えましょう
②じゃんけんの入出力画面用JSPファイルを作成します
jyankenプロジェクトを右クリック→新規→その他→Web→JSPファイル
保存場所:jyanken/src/main/webapp/ ← ここに保存ですよ!
ファイル名:jyanken.jsp
ソースコード:■を埋めましょう
③Webアプリケーションを実行します
JSPファイル(jyanken.jsp)を実行します!!
【課題1】
グー・チョキ・パー・の画像を表示するようjspファイルを変更してください。
(画像は以下の添付画像を使用してください)