【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对象
相关推荐
vx_Biye_Design3 天前
【关注可免费领取源码】房屋出租系统的设计与实现--毕设附源码40805
java·spring boot·spring·spring cloud·servlet·eclipse·课程设计
vx_Biye_Design3 天前
基于Spring Boot+vue的湖北旅游景点门票预约平台的设计--毕设附源码29593
java·vue.js·spring boot·spring cloud·servlet·eclipse·课程设计
lang201509283 天前
JSR-340 :高性能Web开发新标准
java·前端·servlet
铅笔侠_小龙虾4 天前
Flutter 组件层级关系
前端·flutter·servlet
csdn2015_5 天前
Spring Boot `HttpServletRequest`
spring boot·http·servlet
GIOTTO情6 天前
舆情监测技术实战:Infoseek字节探索破解传统监测痛点
servlet
一勺菠萝丶6 天前
Jenkins 构建日志出现 `[INFO]` 乱码?原因与完整解决方案(小白必看)
java·servlet·jenkins
好好研究7 天前
SpringBoot扩展SpringMVC
java·spring boot·spring·servlet·filter·listener
gAlAxy...7 天前
SpringBoot Servlet 容器全解析:嵌入式配置与外置容器部署
spring boot·后端·servlet
Hx_Ma167 天前
SpringMVC框架提供的转发和重定向
java·开发语言·servlet