• Servlet 的生命周期


    1、生命周期

    servlet是一个单实例  多线程的程序

           servlet的生命周期

           1】类加载

            "com.bjsxt.servlet.LifeServlet"

             Class  clazz=  Class.forName("com.bjsxt.servlet.LifeServlet");

            2】实例化 (离不开反射)

            Object  obj=  clazz.newInstance();

            3】 初始化(离不开反射)

            4】服务请求(service)(离不开反射)

            5】 销毁操作(离不开反射)

    2类加载的时机

           1】默认的情况是第一次访问servlet的时候进行类加载     

           2】<load-on-startup>0</load-on-startup>(当启动服务器时候加载) 数字越小加载的时机越往前

    3、代码实现

     //实例化方法   执行一次

     public  LifeServlet(){

     

     System.out.println("LifeServlet.LifeServlet()");

     }

      //请求服务---每一次请求都会执行

    @Override

    protected void doGet(HttpServletRequest req, HttpServletResponse resp)

    throws ServletException, IOException {

    System.out.println("LifeServlet.doGet()");

    }

        //请求服务---每一次请求都会执行

    @Override

    protected void doPost(HttpServletRequest req, HttpServletResponse resp)

    throws ServletException, IOException {

    System.out.println("LifeServlet.doPost()");

    }

    //判断调用doget还是dopost--执行多次

    @Override

    protected void service(HttpServletRequest req, HttpServletResponse resp)

    throws ServletException, IOException {

    //获得传递的方法名成---GET/POST

    String method = req.getMethod();

    System.out.println(method);

    if("GET".equals(method)){

    doGet(req, resp);

    }else if("POST".equals(method)){

    doPost(req, resp);

    }else {

    System.out.println("执行其他的方法");

    }

    }

       //销毁操作  关闭服务器执行一次

    @Override

    public void destroy() {

    System.out.println("LifeServlet.destroy()");

    }

        

    //初始化方法 ----执行一次

    @Override

    public void init() throws ServletException {

    System.out.println("LifeServlet.init()");

    }

     

    }

  • 相关阅读:
    [Clr via C#读书笔记]Cp18 定制Attribute
    [Clr via C#读书笔记]Cp16数组
    [Clr via C#读书笔记]Cp17委托
    [Clr via C#读书笔记]Cp15枚举和位标识
    [Clr via C#读书笔记]Cp14字符字符串和文本处理
    [Clr via C#读书笔记]Cp13接口
    [Clr via C#读书笔记]Cp12泛型
    [Clr via C#读书笔记]Cp11事件
    [Clr via C#读书笔记]Cp10属性
    【程序员面试金典】面试题 02.06. 回文链表
  • 原文地址:https://www.cnblogs.com/vincentmax/p/14277498.html
Copyright © 2020-2023  润新知