今天主要把servlet的一些常用的类、接口和方法简单回顾一下。

javax.servlet包

1.javax.servlet.Servlet接口

接口用于开发servlet,所有的servlet都要直接或间接地实现这个接口,这个接口定义了servlet的生命周期的方法。一般不直接实现该接口,可以扩展javax.servlet.GenericServlet来实现一般协议的Servlet,也可以扩展javax.servlet.http.HttpServlet来实现HTTP的servlet。
接口常用方法有:
1.void init(ServletConfig config); Servlet容器调用,用于初始化Servlet,用ServletConfig对象参数来启动配置,只执行一次。
2.void service(ServletRequest request, ServletResponse response); Servlet容器调用,处理request对象中描述的请求,使用response对象返回请求结果。
3.void destroy(); Servlet 容器调用,卸载Servlet所占的资源。
4.ServletConfig getServletConfig(); 返回一个ServletConfig对象,该对象包含当前Servlet的初始化信息。

2.javax.servlet.ServletConfig接口

接口用于配置servlet。Servlet容器初始化Servlet时,使用ServletConfig对象将服务器的配置信息提供给Servlet,ServletConfig对象包含一级由名/值对形式的初始化参数和一个ServletContext对象。
该接口常用方法有:
1.String getInitParameter(String); 返回一个字符串,包含参数指定的初始化参数值。
2.Enumaration getInitParameterNames(); 以String对象的枚举形式,返回当前Servlet所有初始化参数的名字,如果没有初始化参数,返回一个空枚举。
3.ServletContext getSetvletContext(); 返回当前Servlet正在执行的上下文ServletContext对象。
4.String getServletName(); 返回当前Servlet的实例名字。

3.javax.servlet.ServletContext接口

该接口是Servlet的环境上下文接口,每个Servlet在Java虚拟机内都有一个环境上下文实例。当Servlet初始化时,Web容器将初始化一个ServletContext环境上下文对象,并将其包含在当前的servletConfig对象中,通过ServletConfig对象给Servlet.
接口中常用方法有:
1.Java.lang.Object getAttribute(String); 返回一个由参数给定名字的属性对象。
2.Enumaration getAttributeNames(); 以String对象的枚举形式,返回当前ServletContext 对象所有有效属性名字,如果没有返回空枚举。
3.ServletContext getContext(String uriPath); 返回服务器端的一个与uriPath相符的ServletContext对象
4.Enumaration getInitParameterNames();以String对象的枚举形式,返回当前上下文中所有初始化参数的名字,如果没有,返回空枚举。
5.Java.lang.String getInitParameter(String name);返回一个以name 为名字的初始化参数的值,类型为String类型。
6.void setAttribute(String,Object);绑定一个对象到当前的ServletContext 上下文中。

4.javax.servlet.GenericServlet类

常用方法有:
1.ServletConfig getServletConfig(); 返回当前Servlet的ServletConfig对象。
2.ServletContext getContext(); 返回当前Servlet正在执行的上下文ServletContext上下文的引用。
3.Enumaration getInitParameterNames();以String对象的枚举形式,返回当前上下文中所有初始化参数的名字,如果没有,返回空枚举.
4.String getServletInfo(); 返回当前Servlet的有关信息,如作者版本等信息。
5.String getServletName(); 返回当前Servlet实例的名字。
6.void init(); 初始化Servlet,是一个生命周期方法,可以被覆盖。
7.void init(ServletConfig config); Servlet容器调用,指示当前Servlet放入服务器栈并使用ServletConfig配置。
8.abstract void service(ServletRequest request, ServletResponse response);用来响应客户请求,开发时必须直接或间接实现该方法。

5.javax.servlet.ServletRequest接口

常用方法有:
1.Enumaration getAttributeNames();返回当前所有属性的名字的枚举,如果没有属性,返回一个空枚举。
2.javax.lang.object getAttribute(); 返回一个给出名字的属性值对象。
3.String getCharacterEncoding(); 返回当前请求体中字符编码方式的名字
4.int getContentLength(); 返回当前请求体的长度。
5.String getContentType(); 返回当前请求的MIME类型。
6.ServletInputStream getInputStream(); 获得请求体的输入流
7.String[] getParameterValues(); 返回所有参数值的一个String数组。
8.RequestDispatcher getRequestDispatcher(); 返回一个RequestDispatcher对象。
9.void setAttribute(String,Object); 设置一个属性。
10.Object getAttribute(String); 从当前请求中得到一个给定名字的属性值。
11.String getProtocol(); 返回当前请求使用的协议名字和版本。
12.BufferedReader getReader(); 获得请求体字符数据流。
13.String getRemoteAddr(); 获得发送请求的客户端IP地址。
14.String getRemoteHost(); 获得发送请求的客户端全名和IP地址。

6.javax.servlet.ServletResponse接口

接口常用方法有:
1.void flushBuffer(); 将缓冲区的内容输出到客户端。
2.int getBufferSize(); 返回当前缓冲区的大小。
3.String getCharacterEncoding(); 返回当前MIME中字符编码的名字。
4.ServletOutputStream getOutputStream(); 返回一个输出流对象。
5.PrintStream getWriter(); 返回一个PrintWriter对象,用于发送字符文本到客户端。
6.boolean isCommited(); 当前响应是否已经提交。
7.void reset(); 清除缓冲区的数据。
8.void setBufferSize(int size); 设置响应体缓冲区的大小。
9.void setContentLength(int len); 设置响应体的内容长度。
10.void setContentType(String type); 设置发送到客户端的内容类型。

7.javax.servlet.RequestDispatcher接口

该接口用于定义“请求转发的对象”,常用方法有:
1.void forward(ServletRequest req,ServletResponse resp); 转发一个来自Servlet的请求到另外一个资源。
2.include(HttpServletRequest req,HttpServletResponse resp); 在响应中包含另外一个服务器资源。

javax.servlet.http包

1.javax.servlet.http.HttpServlet类

这是一个抽象类,它继承处javax.servelt.GenericServlet类,提供了一个处理HTTP的框架,用来处理客户端的HTTP请求。该类常用方法有:
1.void doGet(HttpServletRequest req,HttpServletResponse resp); 由service方法调用,用于处理GET请求。
2.void doPost(HttpServletRequest req,HttpServletResponse resp); 由service方法调用,用于处理POST请求。
3.void doPut(HttpServletRequest req,HttpServletResponse resp); 由service方法调用,用于处理PUT请求。
4.void doDelete(HttpServletRequest req,HttpServletResponse resp); 由service方法调用,用于处理DELETE请求。
5.void service(HttpServletRequest req,HttpServletResponse resp); 接收HTTP的标准请求,并将它分配给响应的doXXX()方法,一般不重载此方法。
6.void init(ServeltConfig config); 初始化HttpServlet.

2.javax.servlet.http.HttpServletRequest接口

该接口继承了ServletRequest接口,用于定义封装客户端HTTP请求的“请求对象”。常用方法有:
1.String getContextPath(); 返回指定Servlet上下文的URL前缀。
2.Cookie[] getCookies(); 返回与请求相关的Cookie的一个数组。
3.String getHeader(String name); 返回指定的HTTP头。
4.String getMethod(); 返回HTTP请求方法,如GET、POST。
5.String getQueryString(); 返回查询字符串,即URL中的“?”后面的部分。
6.String getRequestedSessionId(); 返回客户端会话ID。
7.String getRequestURL(); 返回URL中的一部分,从“/”开始,包括上下文,但不包括任意查询字符串。
8.String getServletPath();返回URL上下文后的子串。
9.HttpSession getSession(boolean create); 返回当前HTTP会话,如果不存在,则创建一个新的会话,create参数为true。
10.boolean isRequestedSessionIdValid(); 如果客户端返回的会话ID仍然有效,则返回true。

3.javax.servlet.http.HttpServletResponse接口

该接口继承了ServletResponse接口,它用于定义使用HTTP响应客户端的“响应对象”。常用方法有:
1.void addCookie(Cookie cookie); 将一个Set-Cookie头标加入响应中。
2.void addDateHeader(String name,long date); 使用指定日期值加入带有指定名字的响应头部。
3.void setHeader(String name,String value); 设置具有指定名字和取值的一个响应头部。
4.boolean containsHeader(String name); 判断响应是否包含指定名字的头部。
5.void setStatus(int status); 设置响应使用字符编码的名称。

4.javax.servlet.http..HttpSession接口

接口用于定义一个会话对象。常用方法有;
1.Object getAttribute(String name); 返回当前session中指定名字的对象。
2.Enumeration getAttributeNames(); 返回一个所有属性名字的String对象的枚举变量。
3.void invalidate(); 是当前session失效,并将绑定的对象解除。
4.boolean isNews(); 客户端不知道当前session或不加入当前session则返回true。
5.void removeAttribute(String name); 从当前session中删除指定名字的绑定对象。
6.void setAttribute(String name,Object value);使用指定的名字绑定一个对象到当前的session。
7.void setStatus(int sc,String msg); 给当前的响应设定状态码和信息。

小结

把servlet的两个包下的接口和类中的常用方法简单的总结一下。

JavaWeb知识回顾-Servlet常用类、接口及其方法的更多相关文章

  1. java十五个常用类学习及方法举例

    <code class="language-java">import java.util.Scanner; import java.util.Properties; i ...

  2. JavaWeb知识回顾-servlet简介。

    现在公司主要用jsp+servlet这种原生的开发方式,用的是uap的开发平台,所以趁着这个时候把有关javaweb的知识回顾一下. 首先是从servlet开始. 一.什么是Servlet?(是一些理 ...

  3. JavaWeb知识回顾-servlet生命周期。

    Servlet生命周期 生命周期,很容易理解,拿人来说,就是你从出生到离开的这一过程.无论是什么技术,只要谈到生命周期都可以这样理解. Servlet的生命周期就是从它被创建到毁灭的过程,整个过程可以 ...

  4. java基础知识回顾之javaIO类--File类应用:过滤器接口FilenameFilter和FileFilter

    FilenameFilter和FileFilter都是用来过滤文件,例如过滤,以.jpg或者.java结尾的文件,通过看他们的源码:通过使用File类中String[] list(FilenameFi ...

  5. Servlet 常用类

    Servlet 是一套标准的接口规范,当用户通过web请求来访问服务器时,由web容器根据配置调用我们实现的对应的servlet对象来提供服务.同时为了方便开发,servlet标准中也提供了许多常用的 ...

  6. Java知识回顾 (6)正则表达式、方法、文件与异常

    一.正则表达式 正则表达式定义了字符串的模式. 正则表达式可以用来搜索.编辑或处理文本. 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. Java 正则表达式和 Perl 的是最为相似 ...

  7. Servlet常用的接口和类

    使用接口和类的作用:Servlet也是依靠继承父类和实现接口来实现的.使用Servlet必须要引入两个包:javax.servlet和javax.servlet.http.所有的Servlet应用都是 ...

  8. JavaWeb知识回顾-使用IDEA开发一个servlet.

    刚刚开始学习使用IDEA进行开发,好多都不会,本来想直接导入一个eclipse项目,但是出现了好多错误,一时不知道怎么修改,所以就从最基本的servlet开始着手,慢慢熟悉这个工具,下面是使用IDEA ...

  9. java基础知识回顾之javaIO类--java序列化和反序列化

    /** *  * 一:理解序列化反序列化及其应用 * 序列化:把堆内存的对象转化成字节流的过程. * 反序列化:把字节流序列恢复重构成对象的过程. * 对象的序列化的用途:1.把对象的字节序列持久化, ...

随机推荐

  1. NOIP2017 Day2 T3 列队(treap)

    可以直接用treap上大模拟...n+1个treap维护n行的前m-1个点和最后一列. 需要支持删除一个点或者一段区间,而空间并不支持存下所有的点的时候,可以用一个点代替一个区间,记录区间首项的值和区 ...

  2. Linux应用编程之串口操作20170901

    主要介绍在Linux应用程序下对串口的操作: 1.串口初始化 int InitCom() { int Ret; Ret = SerailComm.OpenCom( ComPortDevPath, 0 ...

  3. 洛谷P1290 欧几里得的游戏

    题目描述 欧几里德的两个后代Stan和Ollie正在玩一种数字游戏,这个游戏是他们的祖先欧几里德发明的.给定两个正整数M和N,从Stan开始,从其中较大的一个数,减去较小的数的正整数倍,当然,得到的数 ...

  4. command not found: django-admin.py

    http://www.cnblogs.com/Xjng/p/3559984.html django-admin.py startproject projectname  其中projectname 为 ...

  5. 6.UiWatcher API 详细介绍

    Tip: 1.监听器不是完能的,所以若用例需要设置监听器防止用例被打断,最好把延迟时间调高一点 2.UiDevice是不会触发监听功能的 3.监听器在方法体或者循环体中是程序还是会被打断的 4.监听器 ...

  6. novaclient源码分析

    源码版本:H版 FAULT_OS_COMPUTE_API_VERSION = "1.1" 一.目录结构及概况 novaclient/ |---client.py --------- ...

  7. linux下怎么查找文件

    linux下通常用whereis或者是locate来检查文件,如果实在找不到,才使用find.为什么find不能作为优先考虑的命令? 因为whereis与locate是利用数据库来查找数据,所以相当快 ...

  8. 跟我一起写Makefile(六)

    使用条件判断—————— 使用条件判断,可以让make根据运行时的不同情况选择不同的执行分支.条件表达式可以是比较变量的值,或是比较变量和常量的值. 一.示例 下面的例子,判断$(CC)变量是否“gc ...

  9. 关于IE浏览器输入框字体不兼容问题

    当写完 input的text输入框后 IE里输入框字体偏上 那么有个简单的解决办法 就是设置行高line-height:Xpx\9;就可以解决   \9表示所有IE

  10. 【CodeForces】915 E. Physical Education Lessons 线段树

    [题目]E. Physical Education Lessons [题意]10^9范围的区间覆盖,至多3*10^5次区间询问. [算法]线段树 [题解]每次询问至多增加两段区间,提前括号分段后线段树 ...