1、servlet的创建
(1)默认是在客户端请求该servlet时才创建servlet的实例。
(2)如果配置了load-on-startup,则在应用启动时创建实例
2、调用初始化方法:init()
init(ContextCofig contextConfig);方法在servlet实例被创建之后立即执行。作用是在客户端请求该servlet之前完成一些初始化工作。
该方法中可以调用ContextCofig 对象来获取初始化参数:getInitParameter(String name); 获取初始化参数名称:getInitParameterNames(); 获取servlet名称:getServletName();获取ServletContext:getServletContext();
3、执行service(ServletRequest req, ServletResponse res)方法
该方法是servlet处理请求的方法,也就是调用业务的主要方法。 在该方法中可以做获取请求参数,调用业务方法,页面跳转等操作。
4、servlet实例的销毁:destroy();
该方法在需要释放内存或者servlet容器关闭时执行,执行该方法后,servlet实例被销毁。
自此servlet的生命周期终止。
其他:由于servlet默认是单例的,一个servlet实例往往要同时服务于多个请求,也就是说它要在多线程环境下工作。因此,必须保证它是线程安全的,那么我们最好不使用servlet的成员变量(实例变量)。