Servlet生命周期+工作原理
2024-10-20 21:01:16
Servlet生命周期+工作原理
1、Servlet的生命周期:
Servlet加载,加载,服务,销毁。
2、典型函数解释:
Init():这个函数是用来初始化Servlet对象的。在Servlet的生命周期中,仅仅执行一次Servlet函数。
Destroy():这个函数是用来销毁Servlet对象的,同样的,在Servlet的生命周期中,仅仅执行一次Servlet函数。
Service():这个函数是Servlet对象响应客户请求时候使用的。是Servlet的核心函数。有两个参数:HTTPRequest,HTTPResponse。HTTPServlet中已经有了Service方法,默认的服务功能是调用和请求方法一致的do功能。
3、tomcat和Servlet是怎么工作的:
- Web client向Servlet容器(tomcat)发出请求
- Tomcat接收请求
- Servlet容器中创建一个HTTPRequest对象,将Web client请求信息放进来。
- Servlet容器中创建一个HTTPResponse对象。
- Servlet容器调用HTTPServlet对象的Service方法,将HTTPRequest和HTTPResponse放入Service函数中去。
- HTTPServlet调用相关方法获取HTTPRequest中的请求信息。
- HTTPServlet调用相关方法去生成HTTPResponse。
- Servlet将相应结果返回给Web client。
4、Servlet的工作原理:
客户发送一个请求,然后Servlet容器会创建基于这个请求的ServletRequest和ServletResponse, 然后调用Servlet的Service方法,获得请求信息,处理信息,返回响应信息。
其中Service方法中选择与请求方法对应的do功能,例如doGet,doPost方法。在Servlet和GenericServlet中是没有这些方法的,需要自己去定义。虽然HTTPServlet中有这些方法,但是返回Error信息,需要我们自己去重载。
Servlet和GenericServlet是不基于任何协议的,而HTTPServlet是基于HTTP协议的。
最新文章
- 在Ubuntu下搭建ASP.NET 5开发环境
- ORA-12541:TNS:no listener 客户端tnsnames.ora配置,以及服务端listener.ora配置
- [pdf.js]预览pdf时,中文名称乱码的问题
- ClassLoader相关内容
- Unity3D脚本中文系列教程(二)
- jquery 缓冲加载图片插件 jquery.lazyload
- js post传值
- Nginx和Tomcat负载均衡实现session共享(转)
- windows下寻找端口
- Eclipse中代码提示框的背景色修改
- Python——Pycharm基本设置
- springboot整理
- C#进阶のMEF注入
- jquery中使元素显示和隐藏方法之间的区别
- SQL Server 最大并行度
- metamask-iframe-stream,没成功
- 【BZOJ4391】[Usaco2015 dec]High Card Low Card(贪心)
- Loadrunner集合点Rendezvous知识
- 【Android】18.2 利用百度定位服务API实现位置跟踪
- Java 请求webServce接口 不带参数
热门文章
- javascript中的数组扩展(一)
- Android的init过程(二):初始化语言(init.rc)解析
- jQuery源码分析之=>;jQuery的定义
- P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1
- python代码风格-PEP8
- 【Android】Android SDK Manager更新慢/失败的问题
- ASP.NET Core1.0 带来的新特性
- jQuery owlcarousel 旋转木马
- 文件无刷新上传(swfUpload与uploadify)
- Cannot export AX project in AX7