servlet 生命周期

2018-07-12  本文已影响0人  pluss

摘自how tomcat works


所有的 servlet 必须实现或者继承实现 javax.servlet.Servlet接口的类。

javax.servlet.Servlet接口的5个方法

public void init(ServletConfig config) throws ServletException
public void service(ServletRequest request, ServletResponse response)
throws ServletException, java.io.IOException
public void destroy()
public ServletConfig getServletConfig()
public java.lang.String getServletInfo()

其中init,service 和 destroy 是 servlet 的生命周期方法。

一个 servlet 程序员可以通过覆盖init方法来写那些仅仅只要运行一次的初始化代码,例如加载数据库驱动,值初始化等等。在其他情况下,这个方法通常是留空的。
在 servlet 容器已经调用完destroy 方法之后,在同一个 servlet 里边将不会再调用 service 方法。destroy 方法提供了一个机会来清理任何已经被占用的资源,例如内存,文件句柄和线程,并确保任何持久化状态和servlet 的内存当前状态是同步的。


servlet生命周期主要涉及它的三个方法,init、service、destroy。
容器启动,自动装载某些servlet,或者客户首次向servlet发送请求,servlet会创建对应的servlet并调用它的init方法。init方法只能调用一次
客户发送请求,容器创建特定于请求的servletRequest和servletResponse。然后调用service方法,通过servletResponse向客户端返回响应信息。
当servlet容器关闭时,会调用servlet对象的destroy方法。destory可用来释放资源。

上一篇下一篇

猜你喜欢

热点阅读