main()メソッドはどこにある?
- 2010-11-11 Thu 13:12:06
- サーブレット事始め
前回作った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()メソッドは見えないだけで、裏ではきちんと存在して処理を行ってくれているわけです。
スポンサーサイト
タグ :
Comments: