servlet生命周期 以及几个方法
作者:互联网
servlet生命周期
生命周期指的是 servlet什么时候被创建 ?
tomcat启动时没有被创建 第一次发送请求时被创建。
什么时间被销毁 ?
tomcat服务器关闭的时候销毁
从创建到被销毁都做了什么?
tomcat启动时做了什么?
底层有一个hashmap,tomcat启动的时候会扫描web.xml文件,将路径和全类名放在map中。
为什么一开始不创建servlet对象?
如果一开始就创建所有的servlet ,会造成资源浪费。 我们可以指定tomcat启动时自动创建servlet对象(数字表示创建顺序 数字越小 创建越小)
<load-on-startup>1</load-on-startup>
当发送请求时,tomcat都做了什么?
http://localhost:8080/day01/two
1.首先获取“/two”
2.回到hash'ma'p中进行匹配,获取到servet的全类名,通过反射创建对象。
3.调用init方法,调用service。
4.最后在关闭tomcat 的时候被销毁
init方法的作用(建议重写时重写无参的方法)、
如果重写有参数的会导致除了在init方法中使用以外 其他地方不能使用,
做初始化,执行时间是在servlet被创建的时候,差不多相当于构造方法。做缓存时用,只在servlet被创建的时候执行一次。
service方法
在我们发送请求的时候被调用,可以多次被调用。
destroy方法
只调用一次 ,在我们关闭tomcat的时候调用,用于关闭资源调用和资源销毁,有异常时也不会执行。
servletConfig方法
servvletConfig是由谁创建的? 是Tomcat创建的
servletconfig是什么?是servletconfig的配置,在tomcat启动的时候会扫描web.xml文件
,把对应的信息封装到servletconfig中
servletconfig是不是共享? 不是,是一个servlet对应一个servletconfig
ServletContext
是谁创建的?tomcat创建
servletContext是什么? servletcContext的环境
servletcontext是所有servlet公用的。
标签:生命周期,销毁,tomcat,servletconfig,servlet,调用,创建,方法 来源: https://www.cnblogs.com/koushijun575/p/16469243.html