[Java / servlet] HttpServletとは

ウェブアプリケーションをJAVAで作る時に、サーブレットを使うことになったので、基本的な事項を整理した。


そもそもサーブレットとは

動的なウェブコンテンツの配信を実現するためにできた、ウェブサーバー上で動くプログラム。

詳細はこちら参照。



動的なコンテンツと静的なコンテンツの違いはこちら


サーバーについてはこちらにまとめた。


HttpServletとは

HttpServletは、サーブレットの一種。

Webサービスの作成に必要なクラスが詰まっている。

例えば、ユーザーから、Webページのリクエストを受け取ってレスポンスを返したり、ユーザーからの入力情報を受け取ったりといったことをするクラスなどがある。

リクエストとレスポンスでん?っとなったらこちらで復習。


HTTPServletを使う際に必要なこと

HTTPServletを使う時には、以下の二点が必要となる

  1. HttpServletクラスを使う時は、自分の用意したクラスのスーパークラスの形として用意する
  2. serviceメソッドかHTTP特有のリクエスト処理メソッドを必ず一つはオーバーライドする

下記で詳しくみていく。


自分の用意したクラスのスーパークラスの形として用意

HttpServletクラスを使う時は、自分の用意したクラスのスーパークラスの形として用意する必要がある。

public class example extends HttpServlet{
  
}


特定のメソッドを必ず一つはオーバーライドする

serviceメソッドかHTTP特有のリクエスト処理メソッドを必ずオーバーライドする必要がある。

オーバーライドに関しては下記に基本的なことを整理してみた。


特定のメソッドとしては下記のものがある。

  • doGet
  • doPost
  • doPut
  • doDelete
  • doHead
  • doOptions
  • doTrace

ユーザー側のリクエストの内容に応じて、上記のメソッドが呼び出される。(意味についてはまた別記事で整理する)

Webサービスのリクエストとレスポンスのやり取りで使われるメソッドとしてざっくり覚えておく。


書き方は?

例えば、doGetメソッドとdoPostメソッドが両方呼ばれるサーブレットは下記のように書く。

public class example extends HttpServlet{
  public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException{


  }

  public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException{


  }
}


なかで書かれている(HttpServletRequest HttpServletResponse)は今は公式のような形で覚えておく。詳細はまた別記事で。

一応引数に何が入っているかだけメモ。

  • HttpServletRequest:クライアントからのリクエスト情報が格納されている
  • HttpServletResponse:ブラウザに HTML を戻す


全体像を把握する

下記にJavaやwebアプリケーションについての記事をまとめた。


[st-card myclass=”” id=3431 label=”” pc_height=”” name=”” bgcolor=”” color=”” fontawesome=”” readmore=”on”]


コンピューターについての全体像も把握しておくと、プログラミングのさらなる理解に役立つ。


[st-card myclass=”” id=4587 label=”” pc_height=”” name=”” bgcolor=”” color=”” fontawesome=”” readmore=”on”]