servlet的执行过程

简介: servlet的执行过程

每一个servlet作为Web应用程序的一个组件不部署到容器中。当他被客户访问时,容器控制着他的实行,其执行过程如下

1035234-20171121212247758-950538460.jpg

容器执行servlet的过程

1,用户通过单击超链接或提交表单向容器请求访问Servlet。容器分析这个请求,如果该请求指向一个servlet,容器创建两个对象,一个是HttpServletRequest请求对象,一个是HttpServletResponse响应对象

2,容器根据请求中的URL找到正确的Servlet,为这个请求创建一个线程对象。有多少个请求,容器将创建多少个线程。

3,容器调用Servlet的service()方法,把请求和响应对象作为参数传递给该方法。

4,service()方法根据客户发出请求的HTTP方法(GET,POST等)决定调用Servlet的doGet()方法或者doPost()方法。

5,Servlet使用响应对象(response)获得输出流对象,调用有关方法将响应写给客户,响应通过容器发送给浏览器。之后,线程将被摧毁或者返回到容器管理的一个线程池。请求和响应对象已经出了作用域,或将被销毁。最后客户得到响应。


目录
相关文章
|
监控
云监控
云监控
345 1
|
前端开发 JavaScript Java
SpringBoot+JQuery+Ajax实现表单数据传输和单文件或多文件的上传
关于如何在SpringBoot项目中结合JQuery和Ajax实现表单数据的传输以及单文件或多文件上传的教程。文章提供了完整的前后端示例代码,包括项目的`pom.xml`依赖配置、SpringBoot的启动类`App.java`、静态资源配置`ResourceConfig.java`、配置文件`application.yml`、前端HTML页面(单文件上传和多文件上传加表单内容)以及后端控制器`UserController.java`。文章最后展示了运行结果的截图。
803 0
SpringBoot+JQuery+Ajax实现表单数据传输和单文件或多文件的上传
|
弹性计算 运维 监控
多云基础设施的统一纳管与运维实践分享
阿里云弹性计算团队十三位产品专家和技术专家共同分享云上运维深度实践,详细阐述如何利用CloudOps工具实现运维提效、弹性降本。
937 1
|
设计模式 Java
枚举类
java枚举类
|
虚拟化
使用VMware Workstation安装FusionCompute CNA和VRM
使用VMware Workstation安装FusionCompute CNA和VRM
786 0
使用VMware Workstation安装FusionCompute CNA和VRM
|
关系型数据库 MySQL 测试技术
PolarDB-X replica原理和使用
《PolarDB-X 动手实践》系列第九期,体验如何用PolarDB-X Replica将PolarDB-X作为不同上游数据库的备库。
|
Android开发 C语言 芯片
如何更好的去学习STM32呢?(一)入门提示
如何更好的去学习STM32呢?(一)入门提示
727 0
如何更好的去学习STM32呢?(一)入门提示
|
存储 算法 JavaScript
这道题原来可以用到JS这么多知识点!
这道题原来可以用到JS这么多知识点! 这几天刷到一道算法题,发它对我们的基础考查挺大,不仅是算法基础,还有语言的基础,其运行机制这些,下面我们来看看这道题。 可以转载,但请声明源链接:文章源链接justin3go.com(有些latex公式某些平台不能渲染可查看这个网站)
147 0
|
TensorFlow 算法框架/工具 计算机视觉
二、cmd、pycharm下同时导入tensorflow,cv2模块,Anaconda导入tensorflow(超级详细步骤)
二、cmd、pycharm下同时导入tensorflow,cv2模块,Anaconda导入tensorflow(超级详细步骤)
二、cmd、pycharm下同时导入tensorflow,cv2模块,Anaconda导入tensorflow(超级详细步骤)

热门文章

最新文章