この課題はJavaServlet基本文法の卒業課題です。
個々人でチャレンジしてください。
以前JavaSE基本文法の卒業課題で作成したような数当てゲームを作成しなさい。
なお、答えの数は乱数を使って、ユーザーごと(ブラウザごと)に別の答えを用意する。
また、0-99以外の整数値や文字列が入力された際のエラー処理は余裕があれば作成すること。
数当てゲームを作成してください。
1.リクエストスコープを使う
制約条件:
JSPに表示を担当させる(ファイル名:game1.jsp)
Servletに処理を担当させる(ファイル名:Game1.java)
コンピュータが生成する答え(乱数)はServletのインスタンス変数に持たせる
データの受け渡しはリクエストスコープを使う
問:このように、数当てゲームでは答えをServletのローカル変数ではなくインスタンス変数に持たせることが適切である。その理由を述べよ。
<出力例1:成功ケース>
<出力例2:もっと大きい>
<出力例3:もっと小さい>
2.セッションスコープを使う
上記1のプログラムにおいて答えをセッションスコープを通じてやり取りするように変更せよ。
制約条件:
JSPに表示を担当させる(ファイル名:game2.jsp)
Servletに処理を担当させる(ファイル名:Game2.java)
コンピュータが生成する答え(乱数)はServletのインスタンス変数に持たせる
データの受け渡しはセッションスコープを使う
問:このように答えをリクエストスコープまたはセッションスコープに保存することがゲームとしては一番適切である。その理由を述べよ。
3.アプリケーションスコープを使う
上記1のプログラムを答えをアプリケーションスコープを通じてやり取りするように変更せよ。
制約条件:
JSPに表示を担当させる(ファイル名:game3.jsp)
Servletに処理を担当させる(ファイル名:Game3.java)
コンピュータが生成する答え(乱数)はServletのインスタンス変数に持たせる
データの受け渡しはアプリケーションスコープを使う
問:このように答えをアプリケーションスコープに保存することはゲームとしてどのような不都合があるか?