Servlet的初始化、销毁及方法调用详解

 时间:2024-10-13 01:46:58

1、init方法的调用

当Servlet被装载并实例化后,容器会调用init方法对Servlet进行初始化,只有在init方法调用成功后,Servlet才处于service状态,能够处理客户端的请求。

注意: 1) 在整个Servlet的生命周期中init方法仅被调用一次

2) 用户定义的Servlet中可以覆盖有参或无参的init方法,但是若覆盖有参init方法,最好先调用super.init(config),对变量config进行赋值初始化。而覆盖无参init可以不调用super.init(),推荐覆盖无参init,为了使用方便。

3) 用户定义的Servlet中可以不去覆盖init方法,覆盖只是为了使用方便(如:获得web.xml中描述的初始化参数。

2、service方法的调用

当Servlet被装载实例化并初始化后,客户端发起请求,容器就会调用Servlet实例的service方法对请求进行处理。

注意: service方法在生命周期中被调用多次,这跟请求的次数有关。

3、Servlet实例的销毁

当容器在销毁Servlet实例前会先去调用destroy(),

在此方法中可以作下列工作:

1) 恢复一些初始化的变量

2) 释放资源

3) 控制所有运行在Servlet中的线程在Servlet实例被销毁之前能正常运行结束

4) 记录日志信息

注意: 1) destroy()在生命周期中仅被调用一次

2) 用户定义的Servlet中可以不覆盖destroy()

  • web前端开发手风琴特效展示步骤
  • 怎么打开新edge浏览器的开发者模式
  • visual studio code怎么设置终端为cmd
  • frameset如何创建框架集
  • 职业分析的步骤包括
  • 热门搜索
    感恩母亲手抄报内容 获奖手抄报 读一本好书手抄报 手抄报教师节 推广普通话手抄报内容 心理手抄报资料 五一节手抄报 禁毒手抄报资料 民族风俗手抄报 525心理健康手抄报