美文网首页
Servlet的生命周期

Servlet的生命周期

作者: 汤姆上校呼叫 | 来源:发表于2019-02-22 16:45 被阅读0次

    Servlet的生命周期:

    (1)加载和实例化

    当Servlet容器启动或客户端发送一个请求时,Servlet容器会查找内存中是否存在该Servlet实例,若存在,则直接读取该实例响应请求;如果不存在,就创建一个Servlet实例。

    (2) 初始化

    实例化后,Servlet容器将调用Servlet的init()方法进行初始化(一些准备工作或资源预加载工作)。

    (3)服务

    初始化后,Servlet处于能响应请求的就绪状态。当接收到客户端请求时,调用service()的方法处理客户端请求,HttpServlet的service()方法会根据不同的请求 转调不同的doXxx()方法。

    (4)销毁

    当Servlet容器关闭时,Servlet实例也随时销毁。其间,Servlet容器会调用Servlet 的destroy()方法去判断该Servlet是否应当被释放(或回收资源)

    * 1、从第一次调用到服务器关闭。

    * 2、如果Servlet在web.xml中配置了load-on-startup,生命周期为

    从服务器启动到服务器关闭

    * 注意:

    * init方法是对Servlet进行初始化的一个方法,会在Servlet第一次加载进行存储时执行

    * destory方法是在servlet被销毁时执行,也就服务器关闭时。

    public class ServletLife extends HttpServlet {

    //初始化方法,在servlet第一次加载内容的时候被调用

    @Override

    public void init() throws ServletException {

    System.out.println("servlet初始化完成");

    }

    //service方法,真正处理请求的方法

    @Override

    protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException, IOException {

    resp.getWriter().write("servlet life");

    System.out.println("servlet life");

    }

    @Override

    public void destroy() {

    System.out.println("我被销毁了...");

    }

    Servlet生命周期详解 - 奋斗人生 - 开源中国

    相关文章

      网友评论

          本文标题:Servlet的生命周期

          本文链接:https://www.haomeiwen.com/subject/drweyqtx.html