Servlet一般扩展HttpServlet,并依据数据发送的不同(GET或POST),覆盖doGet或doPost方法。如果希望Servlet对GET或POST请求采用同样的行动,只需要让doGet调用doPost,反之亦然。
doGet和doPost都接受两个参数:HttpServletRequest和HttpServletResponse。通过HttpServletRequest,可以得到所有的输入数据。通过HttpServletResponse,可以指定输出信息,它可以获得PrintWriter,用它可以将文档内容发送给客户。
Servlet的生命周期:首次创建Servlet时,它的init方法会得到调用,因此,init是放置一次性设置代码的地方。在这之后,针对每个用户请求,都会创建一个线程,该线程调用前面创建的实例的service方法。多个并发请求会导致多个线程同时调用service。之后,由service方法依据接收到的HTTP请求的类型,调用doGet,doPost,或 其它doXxx方法。最后,如果服务器决定卸载某个Servlet,它会首先调用Servlet的destroy方法。