Servlet知识点总结
一, ServletAPI中有4个Java包:
1、javax.servlet:其中包含定义Servlet和Servlet容器之间契约的类和接口
2、javax.servlet.http:其中包含定义HTTPServlet和Servlet容器之间契约的类和接口
3、javax.servlet.annotation: 其中包含Servlet、Filter、Listener的标注,它还为被标注元件定义元数据
4、javax.servlet.descriptor :其中包含提供程序化登录web应用程序的配置信息的类型。
二. Servlet技术概述
Servlet技术的核心是Servlet接口,他是所有Servlet类必须直接或间接实现的一个接口,在编写实现Servlet的Servlet类的时候是直接实现它,在扩展实现这个接口的类的时候就是简介实现它。
Servlet接口中定义了Servlet与Servlet容器之间的契约,这个契约归结起来就是:Servlet容器将Servlet类加载到内存,并在Servlet类的实例上调用具体的方法。在一个应用程序中每种Servlet类种只能有一个实例。
用户请求致使Servlet容器调用了Servlet类种的service方法,并且传入一个ServletRequest实例和一个ServletResponse的实例,ServletRequest中封装了当前的HTTP请求,
因此Servlet开发人员不必解析和操作原始的HTTP请求数据.ServletResponse表示=当前用户的HTTP响,使得将响应发回客户端变得十分容易.
对于每一个应用程序,Servlet容器还会创建一个Servlet Context的实例,这个对象中封装了上下文的环境详情,每个上下文只有一个ServletContext.每个Servlet示例也都有一个封装Servlet配置的ServletConfig
三, Servlet接口
Servlet接口中定义了5个方法:
1、void init(ServletConfig config) throws ServletException
2、void service(ServletRequest request, ServletResponse response) throws ServletException,java.ioi.IOException
3、void destroy()
4、java.lang.String getServletInfo()
5、ServletConfig getServletConfig()
这里需要注意的是,在编写Java方法签名的时候,对于与包含该方法的类型不处于同一个包中的类型的时候要使用类的全名.所以在service方法中javax.servlet.ServletException的签名中可以不用写包的名称,但是java.io.IOException则要编写完整的类名称.
在这五个方法中,init、service和destroy是生命周期方法.Servlet容器根据以下规则调用这三个方法:
init: 当Servlet第一次被请求的时候Servlet容器会调用这个方法,在后续的请求中不会被再次调用
service: 每当请求Servlet的时候多会调用一次
destroy: 当销毁Servlet的时候,该方法被调用.

Servlet知识点总结的更多相关文章
- Servlet知识点大纲
这是我整理的Servlet知识点大纲,可按照它的顺序来学习-..具体的内容在我的博客中都可以找到!
- Servlet知识点
如果请求采用Get方式,则重写doGet()方法,如果请求采用Post方式,则重写doPost()方法. 下面是重写doGet()方法的servlet例子. servlet继承如下类: 整体结构: 在 ...
- Servlet 知识点总结(来自那些年的笔记)
2018年04月15日 20:16:01 淮左白衣 阅读数:350 版权声明:转载请给出原文链接 https://blog.csdn.net/youngyouth/article/details/ ...
- Servlet知识点回顾
一.Servlet生命周期 服务器调用一个Servlet的8个步骤: 1.在服务器启动时,当Servlet被配置好或者被客户首次请求时,由服务器加载servlet,这一步相当于下列代码: Class ...
- servlet 知识点 WebServlet("/")与WebServlet("/*")的区别
(1)一个servlet的请求路径,如果配置成"/",那么它可以拦截除了.jsp之外的所有的请求. (2)一个servlet的请求路径,如果配置成"/*",那么 ...
- Servlet 知识点 中文乱码的本质与解决
本质原因:在servlet中出现中文乱码的原因编码和解码采用的不是一个编码表或者两个编码表不是兼容 例如UTF-8编码.GBK编码都可以读取中文,那么如果采用UTF-8编码保存文件,但是采用GBK编码 ...
- servlet(3) - servlet知识点 - 小易Java笔记
1.servlet的生命周期 (1)容器最终要调用service方法为客户进行服务.(此处“容器”指java运行的环境,tomcat是jsp/servlet的容器) ==> 在内存中一个Serv ...
- Servlet知识点小结
Servlet: server applet * 概念:运行在服务器端的小程序 * Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则. * 将来我们自定义一个类,实 ...
- (三)Servlet 知识点总结(来自那些年的笔记)
(史上最全知识汇总)转载请贴上原文链接! 作者:淮左白衣 写于 2018年4月15日20:14:55 如果,碰巧你打开了本篇博客,相信我,你想要的servlet知识,这里应该都能找到!! 目录 (史上 ...
随机推荐
- AngularJS进阶(二十八)解决AngualrJS页面刷新导致异常显示问题
解决AngualrJS页面刷新导致异常显示问题 绪 俗话说,细节决定成败,编程亦是如此.编程过程中我们可能会不自觉的忽视一些细节问题,殊不知,这些细节正是导致页面显示出现问题的地方.今略举一例,与君共 ...
- 20_Android中apk安装器,通过WebView来load进一个页面,Android通知,程序退出自动杀死进程,通过输入包名的方式杀死进程
场景:实现安装一个apk应用程序的过程.界面如下: 编写如下应用,应用结构如下: <RelativeLayout 编写activity_main.xml布局: <Relative ...
- Darwin Streaming Server 安装流程
Darwin StreamingServer 安装流程 Darwin StreamingServer 支持开放源代码和基于标准的实时传输协议/实时流协议(RTP/ RTSP).MPEG-4 和MP3 ...
- JavaScript进阶(一)抽离公共函数
JS抽离公共函数 问题 在经历了"大量"的项目开发后,发觉越来越多的方法可以被抽离出来作为一个公共方法使用.那么,在js中该思想又该如何实现呢? 解答 例如,以下方法用于实现将标准 ...
- 粒子系统属性Life,发射速率和总数的关系
提示,粒子系统的life,发射速率以及总粒子数是相互影响的. 如果你要发射器射出粒子流然后停顿一会,你将简单的必须确保lifetime和发射速率相匹配以至于在发射出的粒子达到粒子总数之前一些粒子是活跃 ...
- C#中任意类型数据转成JSON格式
/// <summary> /// List转成json /// </summary> /// <typeparam name="T&quo ...
- LeetCode之“字符串”:ZigZag Conversion
题目链接 题目要求: The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of ...
- 携程Android App的插件化和动态加载框架
携程Android App的插件化和动态加载框架已上线半年,经历了初期的探索和持续的打磨优化,新框架和工程配置经受住了生产实践的考验.本文将详细介绍Android平台插件式开发和动态加载技术的原理和实 ...
- 收集一些dos网络配置命令,从新获取ip刷新dns
今天台式机插着无线网卡连接学校无线网,结果就要登录了,完后ip地址固定半天,换了mac地址重新分配还是不能改,ping了主机也不通,我想可能是dns没有刷新.现在收集几个dos命令用来配置网络: 1. ...
- source insight 中tab键的设置
转:http://xinzero.com/source-insight-code-alignment-ended.html source insight代码对齐Tab键终极版 以前也写过一个sourc ...