SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

WTPではじめるサーバサイドJava入門

サーバサイドJava入門 JSPを使ったサーバサイド処理の基本

WTPではじめるサーバサイドJava入門 第2回


  • X ポスト
  • このエントリーをはてなブックマークに追加

このシリーズではEclipse WTPを使い、サーバサイドJava開発の基礎を紹介します。今回は、サーバサイドJavaの最も基本となるJSP(Java Server Pages)の使い方について説明を行いましょう。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 今回から、Eclipse WTPを使ったサーバサイド・プログラミングについて説明していくことにしましょう。まずは、サーバサイドJavaの最も基本と言える「Java Server Pages」からです。通称「JSP」と呼ばれるこの機能は、JavaのコードをHTMLのコード内に埋め込み、スクリプト感覚で利用することができます。

過去の記事

対象読者

  • Javaの基本(文法全般および基本的なクラスライブラリの使い方程度)をマスターしている人。
  • サーバサイド(JSP、サーブレット)について基礎から勉強したい人。
  • Eclipse WTPを使った開発に興味がある人。

Java Server Pagesの特徴

 サーバで動くプログラムというものを考えるとき、通常のプログラムにはない重要な要素を考慮する必要があります。それは「HTMLとの親和性」です。サーバでの処理というのは、どんなものであれ、最終的にはHTMLのテキストとしてクライアント側に送信され表示されます。ということは、特に表示に関係する処理を行う場合、いかにしてHTMLとうまく付き合うか、を考えないといけません。

 また、「修正の容易さ」も重要です。Webサイトは、常に更新され続ける宿命を負っています。ちょっとした修正をすぐに行い反映できるという、フットワークの軽さはWeb系開発では重視されるでしょう。

 こうした「HTMLとの親和性」「身軽さ」といったものを考え生まれたのが「JSP」だ、といえます。JSPは、HTMLのソースコード内に特殊なタグを使ってJavaのコードを埋め込むことができます。埋め込まれたJavaのコードはJavaサーバ(サーブレットコンテナ)内で処理され、最終的にHTMLのソースコードにレンダリングされて送信されます。作成したJSPファイルはそのままサーバに配置するだけで動くようになり、コンパイルや公開のための特殊な手続きなどは不要です。修正が必要になれば、テキストエディタでJSPのファイルを書き換えサーバにアップするだけで済みます。

 「スクリプト言語感覚で使えるJava」――これがJSPの最大の特徴でしょう。

プロジェクトを作成する

 では、さっそくJSPを使ってみましょう。まず、プロジェクトを作成します。WTPでは、プログラムの作成は常に「プロジェクト」単位で行います。プロジェクトというのは、作成するプログラムに必要なファイルや各種の設定などを一元管理するものです。これは、[ファイル]-[新規]-[プロジェクト]メニューを選んで作成します。

 メニューを選ぶと、「ウィザードを選択」と表示されたウインドウが現れます。ここで、作成するプロジェクトの種類を選びます。JSPによるWeb開発を行う場合には、ここから「Web」内にある「動的Webプロジェクト」を選択します。

図1-1 プロジェクトの選択画面では「動的Webプロジェクト」を選ぶ
図1-1 プロジェクトの選択画面では「動的Webプロジェクト」を選ぶ

 続いて「動的Webプロジェクト」という表示に進みます。ここでプロジェクトの諸設定を行います。これは、次のように項目を設定してください。

  • プロジェクト名:
  • プロジェクトの名前を指定します。ここでは「myweb」としておきます。
  • プロジェクト・コンテンツ/デフォルトの使用:
  • プロジェクトの配置場所です。「デフォルトの使用」チェックをONにしておくと、初期設定された場所に保存されます。
  • ターゲット・ランタイム:
  • 対象となる実行環境を指定します。前回作成した「Apache Tomcat v5.5」という項目が表示されているはずなので、これを選びます。
  • 構成:
  • 開発のために必要なライブラリなどをセットアップしたもの(構成)を指定するためのものです。通常は何も選択しない(<カスタム>と表示された状態)にしておきます。
  • EARメンバーシップ:
  • 「EAR」というエンタープライズアーカイブファイルを使用するためのものです。JSP/サーブレットでは関係ないのでOFFにしておきます。
図1-2 プロジェクトの設定画面。名前は「myweb」とする。その他は基本的にデフォルトのままでOK
図1-2 プロジェクトの設定画面。名前は「myweb」とする。その他は基本的にデフォルトのままでOK

 続いて「プロジェクト・ファセット」という表示に進みます。これは開発に必要なサポートをON/OFFするものです。動的Webプロジェクトの場合、「Java」「動的モジュール」の2つの項目がONになっています。これは、特別な理由がない限り変更せず、初期状態のまま次へ進んでください。

 最後に「Webモジュール」という表示が現れます。これは作成するWebモジュール(Webアプリケーション部分)に関する設定です。これは次のように設定をしておきます。

  • コンテキスト・ルート:
  • 公開されるWebアプリケーションのルート名です。通常はプロジェクト名(ここでは「myweb」)が指定されています。公開した場合、このディレクトリ名にアクセスをします。
  • コンテンツ・ディレクトリー:
  • Webアプリケーションのコンテンツを配置するディレクトリ名を指定します。通常は「WebContent」になっています。これは特別な理由がない限りそのままにしておきます。
  • Javaソース・ディレクトリー:
  • ソースコードが配置される場所を指定します。通常は「src」となっています。特別な理由がない限り、これもそのままにしておきます。
図1-3 Webモジュールの設定。これも基本的にはデフォルトの設定のままでいい
図1-3 Webモジュールの設定。これも基本的にはデフォルトの設定のままでいい

 終了すると、プロジェクトが作成されます。その際、場合によってはリソースのキャッシュに関する確認画面が現れるかも知れません。これは[同意します]を選んでください。また、パースペクティブを開きますか?というダイアログが現れると思いますが、これも[はい]を選んでおいてください。

 プロジェクトが開かれると、表示が初期状態より若干変化します。これは「パースペクティブ」というものが変更されたためです。パースペクティブは、さまざまなビュー(ウインドウ内に配置されている部品類)の組み合わせや配置のセットです。Web開発用に表示の設定が変更された、ということなのです。

 プロジェクト・エクスプローラー(ウインドウの左側にあるビュー)を見てみると、「myweb」というプロジェクトが作成され、その中に必要なファイルやディレクトリが既に用意されていることが分かります。主な要素についてざっと整理しておきましょう。

図1-4 プロジェクトに作成される項目
図1-4 プロジェクトに作成される項目
  • デプロイメント記述子:
  • デプロイ(公開)のために必要な情報が整理されています。これは、主に「web.xml」というXMLファイルに記述されている内容と同じものです。
  • Javaリソース:
  • Javaのソースコードファイルが保管されます。
  • build:
  • ビルドして生成されたクラスファイルなどが保管されます。
  • WebContent:
  • これが、作成するWebアプリケーションのディレクトリになります。この中に必要なファイル類を用意してWeb開発を行います。

 とりあえず、JSPしか使わない間は、「WebContent」の役割だけ分かっていれば十分です。ここに、JSPも含めWebに必要なファイル(HTML、CSSなどすべて)を配置します。通常、この「WebContent」フォルダの中身が、そのままサーブレットコンテナ(ここではTomcat)で公開されると考えてよいでしょう。それ以外の場所にあるものは公開されません。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
JSPファイルを作成する

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
WTPではじめるサーバサイドJava入門連載記事一覧

もっと読む

この記事の著者

掌田 津耶乃(ショウダ ツヤノ)

三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1332 2010/01/05 10:36

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング