HttpServlet()のメソッドについて

プログラミング初学者です。

今回はHttpServletのメソッドについてアウトプットさせていただきます。


HttpServletのメソッドの概要

・protected void doGet(HttpServletRequest request,HttpServletResponse response)

・protected void doPost(HttpServletRequest request,HttpServletResponse response)

・protected void doPut(HttpServletRequest request,HttpServletResponse response)

・protected void doHead(HttpServletRequest request,HttpServletResponse response)

etc....

これらはHTTPメソッドをServletで受け取りたい時に書く必要があるものです。

HttpServletのメソッドを記述することによってServlet にHTTPリクエストを処理可能にさせるため、(service メソッド経由で)サーバによって呼び出されます。

例えば、

ユーザーの新規登録でユーザーの情報をDBに保存したいだけの場合はHTTPメソッドはPOSTになると思うので、

Servletには、

protected void doPost(HttpServletRequest request,HttpServletResponse response)

を記述し、その中に処理を書き込む必要があるということです。


なぜHttpServletのメソッドを記述する前に@Overrideを書かないといけないのか?

正直ちゃんと理解はしておらず雰囲気だけわかった状態なので説明が書いてあるURLを以下に貼っておきます。

@Overrideについて

このページの冒頭らへんに、


Web サイトに適した HTTP Servlet を生成するために、サブクラス化を前提とする抽象クラスを提供します。 HttpServlet のサブクラスでは、少なくとも、以下に挙げられている1つのメソッドをオーバーライドする必要があります。


doGet メソッド, Servlet が HTTP GET リクエストをサポートする場合

doPost メソッド, HTTP POST リクエストをサポートする場合

doPut メソッド, HTTP PUT リクエストをサポートする場合



と書いてあると思います。ここが理由となっているので読んでみてください。

毎回かなりふわっとした内容になっております。すみません

また、改善点や間違っている場所等ありましたら、恐れ入りますがコメントから教えていただけると幸いです。