[トライアル版連動企画]
Webアプリケーションの作成が一通り理解できる基礎講座
第2回 サーブレット、JSPの開発と実行
|
JSPを使った開発 |
再びJBuilderに戻り、JSPの開発に移ろう。JSP(JavaServer Pages)は、HTMLに埋め込み可能なJavaプログラムである。JSPは、Webサーバ上のJSPエンジンで変換されてサーブレットが生成され実行される。クライアント側には、通常のHTMLコンテンツが配信される。JSPは、JSPウィザードで作成する。
■Beanを作ってみる
JSPでは、Beanを使用することができる。Beanとは、JSPから利用されるクラスの一種であり、JSPからは、プロパティやメソッドを利用できる。JSPBeanでは、いくつかのスコープを選択できる。
スコープ
|
説明 |
page | Beanのインスタンスは、ページ内でのみ有効である。次の呼び出し時まで、継続してBeanのプロパティを保持することはできない |
session | Beanのインスタンスは、クライアントセッション中で有効である。Beanは、クッキーを使用してクライアントごとにインスタンスを割り当てる |
application | Beanのインスタンスは、アプリケーション全体で有効である。複数のクライアントが、同一のBeanにアクセスする |
ここでは、JavaBeanウィザードを使って、JSPで使用するカウンターBeanを作成してみよう。[ファイル]→[新規作成]を実行し、[JavaBean]を選択する。
画面4 JavaBeanウィザード (クリックすると拡大します) |
ウィザードでは、次のように項目を設定する。
項目
|
値 |
パッケージ | mywebapp |
クラス名 | CounterBean |
親クラス | java.lang.Object |
オプション | ([public]、[デフォルトコンストラクタを生成]をチェックする) |
[OK]ボタンを押してBeanを生成したら、内容ペインの[Bean]タブをクリックし、Beanデザイナーを表示する。[プロパティ]タブをクリックして、[プロパティの追加]ボタンを押し、次のようにプロパティを作成する。
項目
|
値 |
プロパティ名 | counter |
型 | int |
Getter | (チェックする) |
Setter | (チェックする) |
バインディング | none |
画面5 プロパティの追加 (クリックすると拡大します) |
[ソース]タブをクリックして、コードエディタを表示し、以下のコードを追加する。これは、作成したcounterプロパティをカウントアップするメソッドである。
|
■JSPウィザードを使う
[プロジェクト]→[プロジェクトのメイク]を選択してプロジェクトをコンパイルしたら、[ファイル]→[新規作成]を実行して、[JavaServer Page]を選択する。
画面6 JSPウィザード (クリックすると拡大します) |
JSPウィザードが起動したら、次のように項目を設定する。
項目
|
値 |
パッケージ | mywebapp |
名前 | CounterJsp |
InternetBeansタグライブラリを宣言 | (チェックしない) |
エラーページの生成 | (チェックしない) |
サンプルBeanの生成 | (チェックしない) |
[次へ]ボタンを押して、[Beanの追加]ボタンを押す。ここで、先ほど作成したCounterBeanを選択する。追加したBeanに対する各設定項目は次のように指定する。
項目
|
値 |
クラス | mywebapp.CounterBean |
ID | counter |
スコープ | application |
ウィザードを終了すると、JSPファイルが作成されプロジェクトに追加される。このJSPでは、CounterBeanを使ってアクセスカウンタを実装する。次のように、カウンタを増加させ、その内容を表示するコードを記述する。
<BODY> |
JSPでは、<% .. %> 内にJavaコードを記述する。Counterは、追加したBeanに指定したIDであり、JSP内で変数名として使用できる。increment()メソッドを呼び出し、カウンタを1つ増加させる。<jsp:getProperty … >は、プロパティを表示するコードである。このように記述することで、counterというIDのBeanのcounterプロパティを表示できる。これは、以下のコードと等価である。
<%= counter.getCounter()
%> |
<%= … %> は、指定した変数の値を表示するタグである。
■JSPを実行してみる
開発したJSPを開発環境内で実行するには、プロジェクトペインで、CounterJsp.jspを選択して、[Web実行]メニューを選択する。
画面7 JSPの実行 (クリックすると拡大します) |
Inprise Application Serverで、JSPを実行するには、まず、JSPファイルを html/public_htmlに配置する。使用するBeanは、classes/ 下のディレクトリに配置する。この例では、プロジェクトディレクトリ下のclasses/mywebapp/に生成されたCounterBean.classを、Inprise Application Serverをインストールしたディレクトリ下のclasses/mywebappにコピーする。
ブラウザから次のようにURLを指定すると、JSPが実行されカウンタが表示される。
http://localhost:8080/CounterJsp.jsp |
今回作成したJSPに、カウンタ値を保存する機能を追加したものをダウンロード可能にした。参考にしてほしい。
|
連載記事一覧 |
- 実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9)
ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 - Chatwork、LINE、Netflixが進めるリアクティブシステムとは何か (2017/4/27)
「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します - Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6)
ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について - プログラミングとビルド、Androidアプリ開発、Javaの基礎知識 (2017/4/3)
初心者が、Java言語を使ったAndroidのスマホアプリ開発を通じてプログラミングとは何かを学ぶ連載。初回は、プログラミングとビルド、Androidアプリ開発、Javaに関する基礎知識を解説する。
|
|