Servlet的生命周期共分为四大过程


1、实例化 —— 先创建servlet实例

1.1 当客户端首次发送第一次请求后,由Servlet容器去解析请求,根据请求找到是否有对应的servlet。
1.2 判断是否有Servlet实现类的对象存在?存在则直接使用,不存在则先创建一个servlet实现类的对象。

2、初始化 —— init()

调取init()方法进行初始化操作,可以在这一步中使用config.getInitParameter()方法调取配置文件中的参数,这一步在全生命周期内只执行一次。

3、处理请求 —— service()

初始化完成后调取service()方法,由service()判断客户端的请求方式。
3.1 如果是get请求,则执行doGet()方法。
3.2 如果是post请求,则执行doPost()。
3.3 处理方法完成后会作出相应的结果返回给客户端,单次请求处理完毕。

当用户发送第二次以后的请求时,会判断对象是否存在,但是不再执行init(),而直接执行service方法调取doGet() / doPost()方法。

4、服务终止 —— destroy()

当服务器关闭时Servlet调取destroy()方法进行销毁,宣告生命周期的结束。

在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐