`

Servelt生命周期

 
阅读更多

    我们使用Servlet一般会去继承更简单的HttpServlet类或者GenericServlet类,选择性的override一些方法,下面KK就聊一聊Servlet的生命周期, 当然还有一点不得不说的是Servlet是管理意义上的单例。

 

  • 创建(出生)
  1.  当web.xml中<servlet></servlet>中没有设置<load-on-startup></load-on-startup>时,Servlet对象是由用户第一次请求时产生的,产生之后驻留于内存空间,响应下次请求。
  2.  当web.xml中<servlet></servlet>中设置<load-on-startup></load-on-startup>时(<load-on-startup>设置的值大于0), Servlet对象在服务器启动时产生。
  • 方法执行(一生之中的经历)
  1. Servlet创建init(ServletConfig config)方法会自动执行,在整个Servlet生命周期只会执行一次。(只执行一次)
  2. 对于用户的每一次请求,都会创建一个用于封装请求信息的HttpServletRequest和一个用于封装响应信息的HttpServletResponse对象,并调用Servlet的service()方法,将这两个对象作为参数传进去,由service()方法根据请求方式去执行doXxx()方法。(每次访问请求都导致Servlet引擎调用一次service().
  3. Servlet对象被摧毁destory()方法,会自动执行。(只执行一次)
  • 摧毁(死亡)
  1. 关闭web服务器时,或者将web服务器中的应用删除时,对象就会被摧毁,该Servlet对象的destory()就会被执行。
1
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics