HttpServletRequest和HttpServletResponse详解
请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口。
主要的与请求和接口相关的类及接口
|
方 法 |
说 明 |
|
ServletInputStream |
Servlet的输入流 |
|
ServletOutputStream |
Servlet的输出流 |
|
ServletRequest |
代表Servlet请求的一个接口 |
|
ServletResponse |
代表Servlet响应的一个接口 |
|
ServletRequestWrapper |
该类实现ServletRequest接口 |
|
ServletResponseWrapper |
该类实现ServletResponse接口 |
|
HttpServletRequest |
继承了ServletRequest接口,表示HTTP请求 |
|
HttpServletResponse |
继承了ServletResponse接口,表示HTTP请求 |
|
HttpServletRequestWrapper |
HttpServletRequest的实现 |
|
HttpServletResponseWrapper |
HttpServletResponse的实现 |
在上面给出的类和接口中,最主要的是HttpServletRequest和HttpServletResponse接口,下面将详细介绍这两个接口。
1.HttpServletRequest
HttpServletRequest接口最常用的方法就是获得请求中的参数,这些参数一般是客户端表单中的数据。同时,HttpServletRequest接口可以获取由客户端传送的名称,也可以获取产生请求并且接收请求的服务器端主机名及IP地址,还可以获取客户端正在使用的通信协议等信息。下表是接口HttpServletRequest的常用方法。
说明:HttpServletRequest接口提供了很多的方法。
接口HttpServletRequest的常用方法
|
方 法 |
说 明 |
|
getAttributeNames() |
返回当前请求的所有属性的名字集合 |
|
getAttribute(String name) |
返回name指定的属性值 |
|
getCookies() |
返回客户端发送的Cookie |
|
getsession() |
返回和客户端相关的session,如果没有给客户端分配session,则返回null |
|
getsession(boolean create) |
返回和客户端相关的session,如果没有给客户端分配session,则创建一个session并返回 |
|
getParameter(String name) |
获取请求中的参数,该参数是由name指定的 |
|
getParameterValues(String name) |
返回请求中的参数值,该参数值是由name指定的 |
|
getCharacterEncoding() |
返回请求的字符编码方式 |
|
getContentLength() |
返回请求体的有效长度 |
|
getInputStream() |
获取请求的输入流中的数据 |
|
getMethod() |
获取发送请求的方式,如get、post |
|
getParameterNames() |
获取请求中所有参数的名字 |
|
getProtocol() |
获取请求所使用的协议名称 |
|
getReader() |
获取请求体的数据流 |
|
getRemoteAddr() |
获取客户端的IP地址 |
|
getRemoteHost() |
获取客户端的名字 |
|
getServerName() |
返回接受请求的服务器的名字 |
|
getServerPath() |
获取请求的文件的路径 |
2.HttpServletResponse
在Servlet中,当服务器响应客户端的一个请求时,就要用到HttpServletResponse接口。设置响应的类型可以使用setContentType()方法。发送字符数据,可以使用getWriter()返回一个对象。下表是接口HttpServletResponse的常用方法。
接口HttpServletResponse的常用方法
|
方 法 |
说 明 |
|
addCookie(Cookie cookie) |
将指定的Cookie加入到当前的响应中 |
|
addHeader(String name,String value) |
将指定的名字和值加入到响应的头信息中 |
|
containsHeader(String name) |
返回一个布尔值,判断响应的头部是否被设置 |
|
encodeURL(String url) |
编码指定的URL |
|
sendError(int sc) |
使用指定状态码发送一个错误到客户端 |
|
sendRedirect(String location) |
发送一个临时的响应到客户端 |
|
setDateHeader(String name,long date) |
将给出的名字和日期设置响应的头部 |
|
setHeader(String name,String value) |
将给出的名字和值设置响应的头部 |
|
setStatus(int sc) |
给当前响应设置状态码 |
|
setContentType(String ContentType) |
设置响应的MIME类型 |
HttpServletRequest和HttpServletResponse详解的更多相关文章
- HttpServletRequest 和 HttpServletResponse详解
用HttpServletRequest,现在整理如下,以便以后查阅 请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方 法 说 ...
- java HttpServletRequest和HttpServletResponse詳解
這篇文章主要介紹瞭java HttpServletRequest和HttpServletResponse詳解的相關資料,需要的朋友可以參考下 java HttpServletRequest和HttpS ...
- 深入分析JavaWeb Item7 -- HttpServletResponse详解
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...
- HttpServletRequest request方法详解
//1.获取请求参数 //获取参数的单个值,如有多个则只返回第一个 String parameter1 = request.getParameter("demo"); //获取参数 ...
- HttpServletResponse和HttpServletRequest详解.RP
HttpServletResponse,HttpServletRequest详解 1.相关的接口 HttpServletRequest HttpServletRequest接口最常用的方法就是获得 ...
- JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(下)(各种乱码、验证码、重定向和转发)
HttpServletRequest获取请求头信息 (1)获取客户机请求头 String getHeader(String name) Enumeration<String> getHe ...
- JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(上)(各种乱码、验证码、重定向和转发)
HttpServletResponse简介 Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象 request和re ...
- (14)javaWeb中的HttpServletResponse类详解
如果希望了解请求和响应的详细内容,可以看我的“HTTP协议”系列文章 响应体的简单概述: a,响应报文结构: b,常见的状态码,返回服务器处理的结果: c,常见的响应头: HttpServletRes ...
- (13)javaWeb中HttpServletRequest详解
关于HTTP请求和响应,可以参考 HTTP协议 系列文章 导学,请求概述: a,GET和POST请求报文格式: b,常见的请求头 在servlet中,相应的doGet方法和doSet方法中的reque ...
随机推荐
- ios 安卓 video 取消播放自动全屏 属性
x-webkit-airplay="true",x5-playsinline="true",webkit-playsinline="true" ...
- spring mvc 表单提交 乱码
1.在web.xml添加过滤器: <filter> <filter-name>SpringCharacterEncoding</filter-name> <f ...
- Interllij IDEA常用快捷键
[常规] Ctrl+Shift + Enter,语句完成 “!”,否定完成,输入表达式时按 “!”键 Ctrl+E,最近的文件 Ctrl+Shift+E,最近更改的文件 Shift+Click,可以关 ...
- Laravel5中的Session
有关Session的配置文件是aonfig/session.PHP文件. 如果不使用基于数据库.cookie或者Redis缓存类的Session的话,不需要改配置文件就可以使用了. 下面一个简单的使用 ...
- 【ASP.NET】必须知道的ASP.NET核心处理
该找工作了,回头复习一下基础知识,增加一下理论知识的理解,下面我们看一下今天要说的. ASP.NET应用程序对象 一.请求的处理参数:上下文对象HttpContext 当一个请求到达ASP.NET服务 ...
- 转:初探Windows Fuzzing神器----Winafl
转:http://www.tuicool.com/articles/j2eqym6 小结:找到感兴趣的函数,计算偏移,自动化fuzz. 这是一篇客座文章,作者是乌云二进制漏洞挖掘白帽子 k0shl . ...
- Thinkphp模板中函数的使用
1.在模板中使用php函数 在thinkphp的html中,我们经常会遇到一些变量难以直接从php控制端直接处理,这些变量只有在模板中循环输出的时候处理比较合适,这个时候,我们就要在模板中使用函数 1 ...
- HDFS上传文件错误--hdfs:DFSClient:DataStreamer Exception
今天上传文件的时候发现传上去的文件为空,错误提示如上述所示,原来是IP地址改掉了对呀应etc/hosts下面的IP地址也要改变,永久改ip命令-ifconfig eth0 xxx·xxx·xxx·xx ...
- Struts2 + MySQL 实现分页
代码结构: package com.action; import java.util.List; import java.util.Map; import com.bean.Pager; import ...
- JavaScript中的Date类型
ECMAScript中的Date类型是在早起Java中的java.util.Date类基础上构建的.为此,Date类型使用自UTC(Coordinated Universal Time,国际协调时间) ...