Servlet的生命周期

Posted 掉尾瓶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet的生命周期相关的知识,希望对你有一定的参考价值。

一、servlet生命周期

1、  Web容器加载servlet类

2、  初始化servlet对象(构造函数运行)

3、  servlet调用init()方法(servlet一生只调用一次,在容器调用service()方法之前完成)

4、  调用service方法(处理客户请求doGet(),doPost()方法,每个请求都在一个单独的线程中运行)

5、  调用destroy(),容器调用这个方法,从而在servlet被垃圾回收之前有机会回收资源与init()方法一样,也只能调用一次。

 

二、servlet的体系结构

servlet接口,init(),service()和destory()方法是生命周期方法。

技术分享

GenericServlet 是一个抽象类,它实现了Servlet接口,实现了大部分基本的servlet方法

public abstract class GenericServlet implements Servlet, ServletConfig,java.io.Serializable

技术分享

HttpServlet 也是一个抽象类继承GenericServlet,主要实现了一个service方法来处理http的请求与响应。

public abstract class HttpServlet extends GenericServlet 

技术分享

最后写一个自己的servlet来继承HttpServlet.

 

三、请求与响应

public interface HttpServletRequest extends ServletRequest 

public interface HttpServletResponse extends ServletResponse

这些都由容器来实现 HttpServletRequest方法与http有关,如cookie,head和session会话,响应也一样。

 

以上是关于Servlet的生命周期的主要内容,如果未能解决你的问题,请参考以下文章

学亮IT手记Servlet的生命周期

servlet的生命周期,啥情况下调用doGet()和doPost()?

servlet 生命周期和过滤器生命周期之间的区别

JSP 生命周期

JSP生命周期

Servlet编程:Servlet的生命周期