接上篇:
javaweb请求响应原理如下:
当tomcat接收到来自网页的请求(http://localhost:8080/项目名/***)之后,tomcat会找到该项目中的web.xml文件,然后通过***这个请求路径,查找处理这个servlet类型,这刚好可以与<url-pattern>/***</url-pattern>匹配,这说明存在一个可以通过这个请求的servlet,然后再通过<url-pattern>/***</url-pattern>查找到<servlet-name>***</servlet-name>,然再通过servlet-name查找到<servlet-class>项目名.servlet类名</servlet-class>这个时候tomcat已经得到了一个servlet类名。
tomcat通过servlet类名去查找内存中是否存在servlet对象,若存在,直接获取servlet实例调用servlet()方法完成请求。
servlet生命周期
init()默认情况下当servlet第一次被访问的时候init会被调用,servlet实例默认情况下第一次被访问的时候创建的,只创建一次,第二次往后都不会被调用
servlet()每次请求的时候都会被调用
destroy()当servlet对象被销毁时被调用tomcat服务器被停掉时