6-4. サーブレット
JavaでWebアプリケーションを作る際の概要を説明します。
概要
- JavaのWebアプリケーションは、JavaEE(Java Enterprise Edition)の仕様に従って作成します。
- 最新の仕様はJavaEE7
- 仕様:
- JavaのWebアプリで、利用者からのリクエストを受け付ける窓口(エントリポイント)はサーブレットというクラスです。
- エントリポイントは、HttpServletクラスを継承してクラスを作成します。このため、俗にサーブレットと呼ばれます。
- 通常のコマンドラインアプリではエントリポイントとしてmainメソッドを作成する必要がありますが、サーブレットのエントリポイントとなるメソッドは大きく3つあります(他にもあるが使わないので省略)。
- doGet -> GETメソッドのリクエストが来た時の処理を書く
- doPost -> POSTメソッドのリクエストが来た時の処理を書く
- service -> HTTPメソッドの種類を問わずなんでも受け付ける、武器なんか捨ててかかってこいよ、なメソッド。
- サーブレットには、対応するURLのパスを登録します。例:App1Servletは/app1に、App2Servletは/app2に。。。
- リクエストを受けたAPサーバは、URLのパスをみて、どのサーブレットが担当かを判断し、担当サーブレットに処理を依頼します。
- このような、「入力情報をもとに、他の作業者に処理を依頼する」役割のプログラムをdispatcher(ディスパッチャ)と言います。また、router(ルータ・ラウター)とも言います。この用語もよく出てくるので、覚えておいてください。
- ついでに、、、「入力情報をもとに、他の作業者に処理を依頼する」作業自体を、dispatch・routingと言いますね。