JavaWeb之【Servlet对象的生命周期】

一、什么是Servlet对象的生命周期

Servlet对象是由谁来维护

(1)Servlet对象的创建,对象上方法的使用,对象最终的销毁,JavaWeb程序员是无权干预的。

(2)Servlet对象的生命周期是由Tomcat服务器(WEB Server)全权负责

(3)Tomcat服务器通常我们又称为:WEB容器(WEB Container)

(4)注意:自己new的Servlet对象是不受WEB容器管理的。

(5)WEB容器创建的Servlet对象,这些Servlet对象都会被放到一个集合中(HashMap),只有放到这个HashMap集合中的Servlet才能被WEB容器管理,自己new的Servlet对象不会被WEB容器管理。

服务器启动时,Servlet对象有没有被创建出来(默认情况下)

(1)默认情况下,服务器在启动时Servlet对象不会被创建。

(2)如何使Servlet对象在服务器启动时就被创建:在web.xml中的servlet标签中添加子标签load-on-startup,在该字标签中填写整数,缺省值就是不会创建对象,整数越小优先级越高,不能为负数。

Servlet的生命周期

(1)Servlet对象是单例的。【但是Servlet类并不符合单例模式,称为假单例。Tomcat只创建了一个Servlet对象,所以导致了单例。真正的单例,构造方法是私有化的。】

(2)无参构造方法、init方法只在第一次用户发送请求的时候执行。

(3)只要用户发送一次请求,service方法就被Tomcat调用一次。

(4)服务器关闭时,Servlet的destroy方法只被Tomcat调用一次,服务器在销毁对象之前,Tomcat服务器会自动调用对象的destroy方法。

(5)destroy方法执行的时候,Servlet对象还在,执行之后对象才被销毁。【因为destroy方法是实例方法】

二、Serlvet接口的五个方法

init()

1、通常在init()中做初始化操作,并且这个初始化操作只用执行一次。例如:初始化数据库连接池,初始化线程池....

2、init()方法用的较少

destroy()

1、通常在destroy()方法中,进行资源的关闭,或者资源的保存操作。

2、用的也较少

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值