サーブレットを作って分かるJava Webアプリの基本的な仕組み初心者のためのサーブレット/JSP入門(3)(3/3 ページ)

» 2016年07月26日 05時00分 公開
[金城俊哉]
前のページへ 1|2|3       

サーブレットクラスを作成する

 サーブレットの実体は、Javaのクラスです。Webサーバーに格納されたサーブレットクラスは、アクセスがあると、Webサーバーと連携したアプリケーションサーバーによって実行され、実行結果をHTMLで出力します。出力されたHTMLは、クライアントへレスポンスとして送信されます。

サーブレットクラスをプロジェクトに追加する

theme

サーブレットクラスのソースファイルをプロジェクトに追加し、自動で生成されたサーブレットを実行してみる。


[新規ファイル]ダイアログボックス

 1. [プロジェクト]タブでプロジェクト名を右クリックして[新規]→[サーブレット]を選択します。

 2. [クラス名]に「Servlet01」、[パッケージ]に「com.example」と入力します。

 3. [次>]ボタンをクリックします。

[Newサーブレット]ダイアログボックス

 4. [サーブレット名]に「Servlet01」と入力します。サーブレットクラスの正式名は「com.example.Servlet01」ですが、アプリケーション内部では「Servlet01」で認識できるようにします。[URLパターン]は、サーブレットにアクセスするためのURLです。デフォルトで「/Servlet01」となっていますが、この場合、「http://localhost:8080/ServletApp01/Servlet01」でアクセスできるようになります。特に変更する必要はないので、デフォルトのままにしておきましょう。

 5. [終了]ボタンをクリックすると、サーブレットクラスが作成されます。

[Newサーブレット]ダイアログボックス
Navigator

「手順どおりに操作すると、プロジェクトの『ソース・パッケージ』フォルダーに『com.example』パッケージが作成され、内部に『Servlet01.java』というソースファイルが作成されます」


作成されたサーブレットクラス

Onepoint

 サーブレットを作成すると、サーブレットのソースファイルが保存され、コンパイルとデプロイが自動的に行われます。

Memo パッケージ名

 パッケージは、内部に含まれるクラスに付けられるグループ名(名前空間名)です。例え同じ名前のクラスが複数存在しても、パッケージ名で別のクラスとして識別できるようにするために付けます。

 パッケージ名には、基本的に、変数やメソッドと同様に小文字を使います。外部に公開する場合は、使用しているドメイン名を逆順に並べた「com.example」(注:example.comは実在するドメインではなくテスト等に使用する架空のドメインです)のような文字列に、パッケージの内容がわかるような文字列を組み合わせた名前にします。

パッケージ名
ドメイン名を逆順にした文字列 + パッケージの内容がわかる文字列
パッケージ名の例
com.example.game
com.example.access

 ただし、外部に公開するのでなければ特にドメイン名を使用する必要はないので、任意の名前を付けておけばOKです。


Memo コンテキストパスとURLパターン

 プロジェクトに存在するHTMLファイルやサーブレットは、アプリケーションサーバーにデプロイされることで外部に対して公開されます。この場合、ブラウザーからは対象のページのURLを指定してアクセスします。プロジェクトの「Webページ」フォルダーに配置したindex.htmlやindex.jspといったファイルはトップページとなるので、アクセスする際のURLは次のようになります。

トップページにアクセスする
http://サーバー名/アプリケーション名/

 サーバー名は、サーバーを特定するためのインターネットドメイン「example.com」や、サーバー名にドメイン名を加えた「www.example.com」のようになり、ローカル環境でサーバーを稼働させている場合のサーバー名は「localhost」です。ただし、GlassFishはWebサーバーへのアクセスに用いられる80番ポートではなく、8080番ポートを使用しますので、「www.examp le.com:8080」や「localhost:8080」のように8080番ポートを指定します。

 アプリケーション名とは、すなわちプロジェクト名のことです。

●サーブレットへのアクセス

 サーブレットを作成する際に「URLパターン」というものを設定しました。これはサーブレットをリクエストするための名前で、作成時に任意の名前を付けることができます。サーブレットのソースファイルの名前とはまったく関係がなく、あくまでリクエスト用の名前です。

 「Servlet01.java」ファイルで定義したサーブレットクラス「Servlet01」に対して「servlet」というURLパターンを設定した場合は、次のURLでリクエストします。

サーブレットをリクエストする
http://サーバー名/アプリケーション名/servlet

書籍紹介

Javaサーバサイドプログラミング パーフェクトマスター

Javaサーバサイドプログラミング パーフェクトマスター

金城俊哉著
秀和システム 3,780円

Javaははじめてですか? でも、しり込みしなくたっていいんです。いきなりサーバサイドからはじめましょう!

本書は、Webエンジニアを目指す人のために対話形式でJava

EEを基礎からストア構築まで動かしながら学べる解説書です。Javaサーブレットを学び、Java

EEを極めていく一方、初心者のためにコラム形式でJavaの基本も説明します。実行環境の構築、ロジックの作成、データベース連携まで動かしながら覚えられます!

注文ページへ


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。