【JavaWeb】Servlet_简介和运行流程

目录

Servlet简介

动态资源和静态资源

静态资源

无需在程序运行时通过代码运行生成的资源,在程序运行之前就写好的资源,例如:html css js img,音频文件和视频文件

动态资源

  • 需要在程序运行时通过代码运行生成的资源,在程序运行之前无法确定的数据,运行时动态生成,例如Servlet,Thymeleaf ...
  • 动态资源指的不是视图上的动画效果或者是简单的人机交互效果

生活举例

去蛋糕店买蛋糕

直接买柜台上已经做好的:静态资源

和柜员说要求后现场制作:动态资源

动态资源和静态资源在程序上的差别

动态资源和静态资源落实在程序上,在运行时的差别如下:

访问静态资源:

tomcat将Java代码生成的数据转换成响应报文

Servlet简介

Servlet是运行在服务端的Java小程序,是sun公司提供一套定义动态资源规范,从代码层面上来讲Servlet就是一个接口

  1. 不是所有的Java类都能用于处理客户端请求,能处理客户端请求并做出响应的一套技术标准就是Servlet
  2. Servlet是运行在服务端的,所以Servlet必须在WEB项目中开发且在Tomcat这样的服务容器中运行
  3. 用来接收、处理客户端请求、响应给浏览器的动态资源,在整个Web应用中,Servlet主要负责接收处理请求,协同调度功能以及响应数据,我们可以把Servlet称为Web应用中的控制器

Servlet运行流程

  1. Tomcat接收到请求后,会将请求报文的信息转换成一个HttpServletRequest对象,该对象中包含了请求中的所有信息 :请求行 请求头 请求体
  2. Tomcat同时创建了一个HttpServletResponse对象,该对象用于承装要响应给客户端的信息,后面,该对象会被转换成响应的报文:响应行 响应头 响应体
  3. Tomcat根据请求中的资源路径找到对应的Servlet,将Servlet实例化,调用service方法,同时将HttpServletRequest和HttpServletResponse对象传入
  1. 从request对象中获取请求的所有信息(参数)
  2. 根据参数生成要响应给客户端的数据
  3. 将响应的数据放入response对象
相关推荐
BD_Marathon9 小时前
【JavaWeb】Servlet_HelloWorld
servlet
编程小Y2 天前
Servlet 与 Tomcat 白话全解析:从核心原理到实战部署
java·servlet·tomcat
程序员阿鹏2 天前
tomcat正常启动但 SpringMVC 控制器无法启动
java·spring·servlet·tomcat·maven·intellij-idea
爱宇阳3 天前
Jenkins 多语言 Agent 完整部署教程
运维·servlet·jenkins
避避风港3 天前
深入解析Tomcat工作流程与Servlet体系
java·servlet·tomcat
weixin_307779133 天前
高效通知:Jenkins邮件插件完全指南与进阶配置
java·servlet·jenkins
青衫码上行4 天前
【JavaWeb学习 | 第20篇】EL表达式与JSTL标签
java·学习·servlet·java-ee
无名-CODING4 天前
从零手写一个迷你 Tomcat —— 彻底理解 Servlet 容器原理
java·servlet·tomcat
vortex54 天前
【Web开发】从WSGI到Servlet再到Spring Boot
前端·spring boot·servlet