JavaWeb之Servlet的生命周期

本小妞迷上赌 提交于 2020-02-25 15:36:57

相关方法

init():只会调用一次,并且是在servlet对象创建的时候的触发,一般用于做初始化工作
service():处理请求和产生响应的,一次请求调用一次
destroy():只会调用一次,servlet从容器中移除时触发

tomcat启动时,servlet默认没有创建,当在浏览器访问时,才会创建servlet,触发init()和service()方法
当关闭tomcat或将项目从tomcat移除时,会触发servlet的destroy()方法

详细过程

JavaWeb之Servlet的生命周期

当在浏览器输入http://loclhost/Day03/lifeServlet时,首先会根据域名localhost在hosts文件中查找主机ip,即127.0.0.1,然后根据端口号80找到应用程序tomcat,接着根据URI中的/lifeServlet在web.xml查找是否有对应的Servlet,如果找到就将对应的请求交给相应的servlet处理,找不到就交给默认的servlet处理。tomcat会从Servlet容器中获取对应的Servlet,如果找不到会反射创建Servlet对象并放入Servlet容器(创建ServletConfig对象并执行init(ServletConfig config)),调用Servlet对象的service()方法处理请求并作出响应,第二次访问同个目标时,便直接调用service()方法,当tomcat关闭后,会触发servlet对象的destroy()方法

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!