首页 理论教育Servlet生命周期指导

Servlet生命周期指导

【摘要】:完成本任务所用到的主要知识点:创建ServletServlet 生命周期编写一个Servlet 测试Servlet 的生命周期。在理论部分学习了Servlet 的生命周期,它包括加载、实例化、初始化、服务和销毁几个阶段。而destroy()方法无法测试出效果,实际上在整个Servlet 的生命周期过程中,destroy()方法也只执行了一次。

完成本任务所用到的主要知识点:

➢ 创建Servlet

➢ Servlet 生命周期

编写一个Servlet 测试Servlet 的生命周期。

在理论部分学习了Servlet 的生命周期,它包括加载、实例化、初始化、服务和销毁几个阶段。这个生命周期由javax.servlet.Servlet 接口的init()、service()和destroy()等方法所定义。也就是说生命周期的每个阶段都对应有一个方法,所以只需在每个阶段对应的方法中打印输出一些标识信息,每访问一次该Servlet 就对结果进行一次比较,待多次访问后,就能根据输出的标识信息看出Servlet 的生命周期是怎样的。

创建项目sj3_2,并创建一个Servlet(TestLifeCycleServlet.java)用于测试Servlet 的测试信息。该Servlet 的代码如下:(www.chuimin.cn)

第1 次访问TestLifeCycleServlet 输出的结果:

第2 次访问TestLifeCycleServlet 输出的结果:

第3 次访问TestLifeCycleServlet 输出的结果:

接下来的多次访问输出的结果都没变化。

所以,在整个Servlet 的生命周期过程中,创建Servlet 实例、调用实例的init()都只进行一次。而destroy()方法无法测试出效果,实际上在整个Servlet 的生命周期过程中,destroy()方法也只执行了一次。当初始化完成后,Servlet 容器会将Servlet 实例保存到内存中,通过调用它的service()方法为接收的请求服务。