弊社の新人エンジニア研修向けのJSP Servletの問題集です。
0.ウェルカムページの作成
ファイル名を指定しなくても、プロジェクト名(ディレクトリ名)を指定することでアクセスできる、いわゆるウェルカムページを作成しなさい。
ファイル名:index.jsp
なお、ウェルカムページとは、例えばプロジェクト名が「JavaExercise」である場合に以下のURLでアクセスできるページである。
http://localhost:8080/JavaExercise/ |
ブラウザに表示する内容は以下とする。
<h1>ウェルカムページへようこそ</h1>
※同一ディレクトリ内にindex.htmlとindex.jspがあった場合は、htmlファイルが優先されるので気を付けること。
1.スクリプトレットと式
自己紹介用のJSPを作りたい。
ファイル名:selfIntroduce.jsp
制約条件:スクリプトレットの中でString型の変数nameとint型の変数ageを宣言して初期化し、HTMLのボディに式を使って出力する。
<出力例>
私の名前は今井です。年齢は33歳です。
2.スクリプトレットの中の分岐
おみくじのJSPを作りたい。
ファイル名:omikuji.jsp
前提条件:おみくじは、大吉,吉,凶の3種類で今日の日付とともに表示。
制約条件:出力個所では式を使用すること。
<出力例>
私の名前は今井です。年齢は33歳です。2021-05-01の運勢は大吉です |
3.スクリプトレットの中の繰り返し①
以下のように1~10までの正の整数を表示するJSPを作りなさい。
ファイル名:loop_1.jsp
制約条件:ループを使うこと。また、出力個所では式を使用すること。(以下同じ)
<出力例>
1 2 3 4 5 6 7 8 9 10 |
4.スクリプトレットの中の繰り返し②
以下のように1~10までの正の整数の自乗を表示するJSPを作りなさい。
ファイル名:loop_2.jsp
<出力例>
1 4 9 16 25 36 49 64 81 100 |
5.スクリプトレットの中の繰り返し③
ファイル名:loop_3.jsp
上記JSPをテーブルに入れよ。
<出力例>
1 | 4 | 9 | 16 | 25 | 36 | 49 | 64 | 81 | 100 |
※このテーブルにかかっているCSSは無視してよい。つまりテーブルに数値が入っていれば良い。
ヒント:行をつくるための<tr>タグはいくつ必要ですか?
6.スクリプトレットとHTMLの混在①
以下のような九九をアウトプットするJSPを新規で作成しなさい。
ファイル名:loop_4.jsp
<出力例>
1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 |
ヒント:改行のためには何タグを使いますか?
7.スクリプトレットとHTMLの混在②
上記JSPを見やすいようにテーブルに入れよ。
ファイル名:loop_5.jsp
<出力例>
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 |
3 | 6 | 9 | 12 | 15 | 18 | 21 | 24 | 27 |
4 | 8 | 12 | 16 | 20 | 24 | 28 | 32 | 36 |
5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 |
6 | 12 | 18 | 24 | 30 | 36 | 42 | 48 | 54 |
7 | 14 | 21 | 28 | 35 | 42 | 49 | 56 | 63 |
8 | 16 | 24 | 32 | 40 | 48 | 56 | 64 | 72 |
9 | 18 | 27 | 36 | 45 | 54 | 63 | 72 | 81 |
※このテーブルにかかっているCSSは無視してよい。
ヒント:</tr>タグには改行のような作用があります。
8.アクセスカウンタ
アクセスカウンタのプログラムである。
以下の3つのパターンで作成しなさい。
1.JSPの宣言、スクリプトレット、式の3つの方法を使うパターン。
2.JSPの宣言とスクリプトレットだけを使うパターン。
3.JSPの宣言と式だけを使うパターン。
なお、JSPの宣言を使わずに、ローカル変数だけでカウンターを作ろうとすると上手く行かない。
その理由も考えること。
ファイル名:accessCounter.jsp
<出力例>
※以降、ブラウザを更新するたびに数値が1ずつ増えていく。
9.オリジナル問題作成
将来の後輩のために良い問題が出来たら教えてください。