servlet的执行过程

第一次访问servlet的过程:

服务器启动:在服务器启动的时候,加载项目,就扫描web.xml文件,获得应用有哪些servlet,url-pattern,

客户端通过URl访问服务器【向服务器发送一个请求request】,服务器查看web.xml里面响应的项目

在servlet-mapping标签的url-pattern标签中找到

通过url-pattern的兄弟标签servlet-name找到servlet标签的servlet-name

通过servlet标签的servlet-name,找到servlet-name得兄弟标签servlet-class标签

通过servlet-class的内容找到对应的servlet文件。

判断servlet是否实例化了,没有则执行init()实例化servlet对象

然后执行他的service()【这个类是服务器实例化的,方法也是服务器调用的】

服务器执行完service(),将处理结果封装在response【HttpServletResponse】中,返回给客户端。

在整个过程中,如果找不到url&urI中的下级目录,就报404错误。

 

拓展【当应用程序中涉及到数据库】:

操作数据库需要jar包,当访问第一个servlet的时候,

服务器会先实例化请求的servlet的实例,然后加载lib包下面的类加载,然后在加载tomcat里面他自己的类,

原文地址:https://www.cnblogs.com/excellencesy/p/8629768.html