fc2ブログ

main()メソッドはどこにある?





前回作ったHelloWorld.javaのファイルのソースの解説をします。


package basic;

import java.io.*; //(1)
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorld extends HttpServlet{ //(2)

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException { //(3)

PrintWriter out=response.getWriter(); //(4)
out.println("HelloWorld"); //(5)
}
}



Javaを勉強した人なら、当然抱くべき疑問があるはずです。

main()メソッドはどこにある?

実は、サーブレットにはmain()メソッドがありません。

サーブレットはブラウザからTomcatのサーバにリクエストしてレスポンスが返ってくるという構造になっていますが、実はこのTomcatのコンテナがmain()メソッドを持っているので、サーブレットのソースに記述する必要がないのです。

このコンテナのmain()メソッドは、私たちのの作るサーブレットのクラスをインスタンス化し、そのインスタンスのdoGET()メソッドなどをコンテナ側から実行してくれるというわけです。

要するに、main()メソッドは見えないだけで、裏ではきちんと存在して処理を行ってくれているわけです。
スポンサーサイト



タグ :

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://servletmania.blog137.fc2.com/tb.php/2-73e8d5a8
月別アーカイブ
カテゴリ
リンク
RSSリンクの表示
QRコード
QR