HttpServletRequest 和 HttpServletResponse详解
用HttpServletRequest,现在整理如下,以便以后查阅
请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口。
主要的与请求和接口相关的类及接口
方 法 |
说 明 |
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详解
请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方 法 说 明 ServletInputStream Servlet的输入流 ...
- 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 ...
随机推荐
- Dockerfile的简单人门编写之关于yum的问题
首先我们编写一个简单的Dockerfile的例子.不过再此之前大家得去把编写dockerfile的指令了解一下. 编写以 centos镜像为基础镜像,构建 http 服务,Dockerfile 要求删 ...
- 用long类型让我出了次生产事故,写代码还是要小心点
昨天发现线上试跑期的一个程序挂了,平时都跑的好好的,查了下日志是因为昨天运营跑了一家美妆top级淘品牌店,会员量近千万,一下子就把128G的内存给爆了,当时并行跑了二个任务,没辙先速写一段代码限流,后 ...
- C/C++,被誉为“最经典的编程语言”,不仅是因为编程入门需要学?
计算机诞生初期,用机器语言或汇编语言编写程序; 第一种高级语言FORTRAN诞生于1954年; BASIC语言(1964)是由FORTRAN语言的简化而成的是为初学者设计的小型高级语言; C语言是19 ...
- php 对象的调用和引入
直接上实例: 定义: <?php namespace app\php; class a { ; public function index() { echo "; } static f ...
- 2019.11.13课堂实验之用Linux下的shell脚本完成两文本交替输出
有两个文本如下,实际中并不知道两文本各有多少行: 文本1.txt aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ccccccccccccccccccccccccccc ...
- 2019-2020-1 20199329《Linux内核原理与分析》第六周作业
<Linux内核原理与分析>第六周作业 一.本周内容概述: 学习系统调用的相关理论知识,并使用库函数API和C代码中嵌入汇编代码两种方式使用getpid()系统调用 学习系统调用syste ...
- windows下git commit使用gvim编辑器
安装gvim 下载安装包:ftp://ftp.vim.org/pub/vim/pc/gvim80-586.exe 安装后将安装路径添加到环境变量Path中 设置编码支持中文 在安装路径下的_vimrc ...
- 老男孩Linux运维50期 --于海科--决心书
1.我叫于海科,来自于甘肃省天水市,之前就读于兰州石化职业技术学院,我是听之前的学长说老男孩教育出来就业不错,我特此来这培训希望出来能够找到一份不错的工作.2.五个月学完,目标薪资是11k.3.达到目 ...
- Eclipse Collections:让Java Streams更上一层楼
\ 关键要点 \\ Eclipse Collections是一个高性能的Java集合框架,为原生JDK集合增加了丰富的功能.\\t Streams是JDK的一个非常受欢迎的功能,但它缺少了一些特性,严 ...
- Docker配置TLS认证,修复因暴露2375端口引发漏洞
1.环境准备 # 查看Docker服务器主机名hostnamectl 这里记住我的主机名s130就好 # 静态主机名修改vi /etc/hostname# 临时主机名修改(重启失效)hostname ...