什么是Servlet
目录
一.Servlet定义
二.Servlet方法
三.GenericServlet抽象类
四.HttpServlet抽象类
五.Servlet生命周期
六.Server 创建一个 Servlet的实例
一.Servlet定义
Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。
Servlet就是java中处理http请求的技术。
二.Servlet方法
1.init方法:初始化Servlet
2.service方法:处理http请求,并返回响应
有两个参数 1.请求:request 2.响应:response
3.destory方法:销毁Servlet
三.GenericServlet抽象类
是一个抽象类,实现了Servlet接口.
四.HttpServlet抽象类
是GennricServlet的子类,与HTTP有关,没有实现init和destory,主要是对service方法的重写
五.Servlet生命周期
客户端请求该 Servlet;
加载 Servlet 类到内存;
实例化并调用init()方法初始化该 Servlet;
service()(根据请求方法不同调用doGet() 或者 doPost(),此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions()、destroy())。
加载和实例化 Servlet。这项操作一般是动态执行的。然而,Server 通常会提供一个管理的选项,用于在 Server 启动时强制装载和初始化特定的 Servlet。
六.Server 创建一个 Servlet的实例
第一个客户端的请求到达 Server
Server 调用 Servlet 的 init() 方法(可配置为 Server 创建 Servlet 实例时调用,在 web.xml 中 标签下配置 标签,配置的值为整型,值越小 Servlet 的启动优先级越高)
一个客户端的请求到达 Server
Server 创建一个请求对象,处理客户端请求
Server 创建一个响应对象,响应客户端请求
Server 激活 Servlet 的 service() 方法,传递请求和响应对象作为参数
service() 方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
service() 方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如 doGet() 或 doPost() 或程序员自己开发的新的方法。
对于更多的客户端请求,Server 创建新的请求和响应对象,仍然激活此 Servlet 的 service() 方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用 init() 方法。一般 Servlet 只初始化一次(只有一个对象),当 Server 不再需要 Servlet 时(一般当 Server 关闭时),Server 调用 Servlet 的 destroy() 方法。
如图1所示显示了一个典型的 Servlet 生命周期方案:
图1:典型的 Servlet 生命周期
1.第一个到达服务器的 HTTP 请求被委派到 Servlet 容器。
2.Servlet 容器在调用 service() 方法之前加载 Servlet。
3.然后 Servlet 容器处理由多个线程产生的多个请求,每个线程执行一个单一的 Servlet 实例的 service() 方法。
什么是Servlet相关推荐
- Ajax接收Java异常_java – 处理来自Servlet的Jquery AJAX响应中的异常
我的servlet代码是 try{ //something response.setStatus(201); out.print("Data successfully saved" ...
- JavaEE学习笔记之Servlet
同一用户的不同页面的共享数据 1.1 cookie技术 1.2 sendRedirect()转向 1.3 隐藏表单 1.4 session技术 ###session技术: 当用户打开浏览器,访问某个网 ...
- 【JavaWeb】servlet与http请求协议
Servlet: 概念: server applet (服务端小程序)运行在服务器端的小程序 Servlet就是一个接口,定义了Java类被浏览器访问到(Tomcat识别)的规则. 将我我们自定义一个 ...
- 使用最新版(2020)IntelliJ IDEA 创建Servlet项目
一:选择左上端的File,创建Project,选择创建Web Application 项目: 注:不勾选Create web.xml 二:设置项目名称:helloworld,并创建一个Servlet( ...
- 2020了,还要学JSP嘛?入个门呗!毕竟Servlet亲兄弟~
目录 1.什么是JSP 2.JSP原理 3.JSP基础语法 jsp表达式 jsp脚本片段 jsp声明 jsp注释 4.JSP指令 5.JSP行为 6.9大内置对象 7.EL表达式 格式 变量 [ ]与 ...
- 来谈谈Servlet~~
目录 1.Servlet简介 2.第一个Servlet程序 3.Servlet原理 4.servlet-mapping的配置 5.关于ServletContext 1.共享数据 2.获取初始化参数 3 ...
- 使用Servlet完成单表的CRUD
实现步骤 第一步:准备一张数据库表.(sql脚本) 第二步:准备一套HTML页面(项目原型)[前端开发工具使用HBuilder] 第三步:分析我们这个系统包括哪些功能 第四步:在IDEA当中搭建开发环 ...
- 适配器(GenericServlet)改造Servlet
JavaWeb系列教程 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造Servle ...
- 使用IDEA开发Servlet程序
JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...
- 模拟Servlet本质
JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...
最新文章
- thinkphp整合系列之gulp实现前端自动化
- pythonasyncio在哪个版本好_理解Python asyncio的简洁方式
- SAP Spartacus table里显示较长数据时自动显示省略号的设置
- 经验 | 上交机械本硕转计算机视觉岗位面经
- strlen函数实现
- linux下 java 压缩文件夹,java压缩文件夹linux下乱码问题
- 拓扑学(代数拓扑学)的有趣应用
- Repast-边界控制
- 对接微信支付服务商后商户能得到哪些服务?
- GPS经纬度 转化为 M
- coreutils8.32 hostid命令和源码分析
- [BJWC2008]王之财宝
- 专访Barefoot:被Intel收购后的五倍爆发力
- 打卡day07 python基础—函数
- 通过Safari浏览器获取iOS设备UDID(设备唯一标识符)
- 简易封装 element form表单
- 基于hls格式的光条检测纯c++代码——重心法
- 2006.7-8,九方公司网站维护
- CW1233\CW1243\CW1053\CW1056\赛威一级代理\锂电池保护IC\中文规格书
- Node js 集群(cluster)