zoukankan      html  css  js  c++  java
  • servlet篇 之 生命周期

    二:Servlet的生命周期

    背景知识

    servlet是单例,web项目运行期间,一个servlet只会创建一个对象[tomcat帮我们实例 ]【尽量不要在servlet中定义成员变量】。因为web项目本身就需要在多线程的环境 中运行,在这种环境下,由于servlet是单例,所以在servlet中声明的成员变量,就会有线程 安全的问题。

    1,servlet加载和实例化(创建)

    Servlet容器负责加载和实例化Servlet。当Servlet容器启动时,或者在容器检测到 需要这个Servlet来响应第一个请求时,创建Servlet实例

    2,servlet初始化

    Servlet实例化之后,容器将调用Servletinit()方法初始化这个对象。初始化的 目的是为了让Servlet对象在处理客户端请求前完成一些初始化的工作,如建 数据库的连 接,获取配置信息等

    3,servlet请求处理服务

    servlet容器调用Servletservice()方法对请求进行处理。要注意的是,在service() 方法调用之前,init()方法必须成功执行。

    4,servlet销毁

    servlet对象被销毁的时候,tomcat服务器会调用servlet里面的destory方法

     

     

    Servlet接口中的方法(共有五个方法)
        //初始化servlet对象的时候被调用
        void     init(ServletConfig config)

        //销毁servlet对象的时候被调用
        void     destroy()

        //访问servlet对象的时候被调用
        void     service(ServletRequest req, ServletResponse res)
        
        //返回servlet相关信息,比如作者、版本、版权等
        //父类中(GenericServlet)默认返回一个空字符串 ""
        //如果需要的话,【程序员可以自己重写】这个方法
        String     getServletInfo()

        //返回ServletConfig对象
        ServletConfig     getServletConfig()

  • 相关阅读:
    狗蛋带仨妞【Beta】Scrum meeting 1
    实验九 团队作业5:团队项目编码与Alpha冲刺
    狗蛋带仨妞【Alpha】Scrum meeting 7
    狗蛋带仨妞【Alpha】Scrum meeting 6
    狗蛋带仨妞【Alpha】Scrum meeting 5
    狗蛋带仨妞 【Alpha】Scrum meeting 1-4
    Rosetta中准备配体的参数文件
    pymol安装
    chemshell的creation之后
    关于KIE的一点认识
  • 原文地址:https://www.cnblogs.com/wskb/p/10704982.html
Copyright © 2011-2022 走看看