一Servlet容器响应客户请求访问特定的servlet的时序图
二Servlet的生命周期
Servlet的生命周期可以分为三个阶段:初始化阶段、运行时阶段和销毁阶段
1、初始化阶段
(1)Servlet容器加载Servlet类,把他的.class文件读到内存中。
(2)Servlet容器创建ServletConfig对象。ServletConfig包含特定Servlet的初始参数,此外Servlet容器还会使ServletConfig对象与ServletContext建立关联关系。
(3)Servlet容器创建Servlet对象。
(4)Servlet容器调用Servlet对象的init(ServletConfig config)方法。在Servlet接口的GenericServlet实现类的init(ServletConfig config)方法中,会建立Servlet对象与ServletConfig对象的关联关系。
2、运行时阶段
(1)Servlet随时响应客户端的请求。
(2)当Servlet容器接收到客户端的请求时,创建ServletRequest对象和ServletResponse对象。
(3)调用相应Servlet对象的service方法,service方法从ServletRequest对象中获取客户请求,并处理请求,通过ServletResponse生成响应结果。
(4)销毁ServletRequest对象和ServletResponse对象。
3、销毁阶段
(1)Servlet容器调用所有Servlet对象的destroy()方法,释放Servlet所占资源,如IO流,数据库连接。
(2)销毁Servlet对象,以及相关联的ServletConfig对象。