首页 > 其他 > 详细

Servlet生命周期

时间:2014-01-28 19:05:44      阅读:401      评论:0      收藏:0      [点我收藏+]

近期在学习javaweb方面的知识,借鉴视频教程上的例子,留作备注:

Servelet代码如下:

 

bubuko.com,布布扣
package com.liuxgnu;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
public class TestServlet extends HttpServlet {
 
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
 
        /**
         *构造方法
         */
    public TestServlet()
    {
        System.out.println("Constructor");
    }
 
 
        /**
         *get请求处理
         */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
                             throws ServletException, IOException
    {
        doPost(request, response); //转向post
    }
 
 
        /**
         *Post请求处理
         */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) 
                              throws ServletException, IOException
    {
        System.out.println("doPost");
    }
 
 
        /**
         *销毁
         */
    @Override
    public void destroy()
    {
        System.out.println("destroy");
    }
 
 
        /**
         *初始化
         */
    @Override
    public void init() throws ServletException 
    {
        System.out.println("init");
    }
}
bubuko.com,布布扣

Web.xml就不写了.

第一次请求Servlet的时候,后台打印:

Constructor
init
doPost

由此可以看出,首先执行构造方法,然后执行初始化,然后才执行Post/Get方法.
而第二次访问Servlet的时候,并没有执行构造方法和初始化方法,那就说明,这个类已经生存,且听视频上老师的讲解说”①常规Servlet容器仅生成一个Servlet对象”,有些似懂非懂的样子,但从后台打印出来的结果看,确实只生成了一个对象.

第二次请求Servlet的时候,后台打印:

Constructor
init
doPost
doPost

注解:①常规Servlet容器仅生成一个Servlet对象
非分布式情况下,一个服务器端只生成一个Servlet实例.

Servlet生命周期

原文:http://www.cnblogs.com/liuxgnu/p/3535485.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!