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()

  • 相关阅读:
    Java中的四种内部类
    用输入/输出写一个程序,让用户输入一些姓名和电话号码
    分批读取大数据问题
    Linux产生序列数字
    两个有序链表的合并
    int和Integer的区别
    wait()和sleep()的区别
    Unix和Windows文件格式转化
    截取字符串的代码实现
    查看系统信息
  • 原文地址:https://www.cnblogs.com/wskb/p/10704982.html
Copyright © 2011-2022 走看看