今天主要把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. Codeforces Round #207 (Div. 2)A B C E 水 思路 set 恶心分类

    A. Group of Students time limit per test 1 second memory limit per test 256 megabytes input standard ...

  2. 洛谷P1991 无线通讯网

    P1991 无线通讯网 170通过 539提交 题目提供者洛谷OnlineJudge 标签图论 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 怎么又炸了 为啥一直40!求解! UKE:inv ...

  3. Servlet3.0 新特性

    Servlet3.0 的注解 Servlet 允许开发人员采用注解的方式来配置 Servlet.Filter.Listener. Servlet3.0 规范在 javax.servlet.annota ...

  4. nginx优化--gzip压缩与expire浏览器缓存

    gzip压缩 概述 网页在服务器端经过了gzip或者其他格式的压缩后的输出明显减少了content-length字节,当访问过百万时,这些减少的字节就会变为客观的流量给节约下来;从而减轻服务器的压力以 ...

  5. redis 字符串的管理的一点理解

    redis字符串可以实现通过地址偏移找到所在结构体的首地址,struct sdshdr *sh = (void *)(s - (sizeof(struct sdshdr))) 也就是通过buf地址可以 ...

  6. u3d图片转视频

    c#代码://将截图生成视频public static void createVideo(){ ProcessStartInfo psi = new ProcessStartInfo(); psi.F ...

  7. SpringBoot (四) :thymeleaf 使用详解

    原文出处: 纯洁的微笑 在上篇文章< springboot(二):web综合开发 >中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用.thymele ...

  8. python---Scrapy模块的使用(一)

    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中. Scrapy 使用了 Twisted异步网络库来处理网络通讯.整体 ...

  9. SQL基础操作

    SQL是操作数据的语言 增加记录: insert into 数据表名称(字段1,字段2,字段3....)values(值1,值2,值3.....) 查看表结构:desc 表名 inset into x ...

  10. Mongodb 备份 还原 导出 导入 等批量操作

    mongodb数据备份和还原主要分为二种,一种是针对于库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport. 一,mongodump备份数 ...