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 ...
随机推荐
- 几个可以提高工作效率的Python内置小工具
在这篇文章里,我们将会介绍4个Python解释器自身提供的小工具.这些小工具在笔者的日常工作中经常用到,减少了各种时间的浪费,然而,却很容易被大家忽略.每当有新来的同事看到我这么使用时,都忍不住感叹, ...
- 15分钟从零开始搭建支持10w+用户的生产环境(三)
上一篇文章介绍了这个架构中,选择MongoDB做为数据库的原因,及相关的安装操作. 原文地址:15分钟从零开始搭建支持10w+用户的生产环境(二) 三.WebServer 在SOA和gRPC大行其 ...
- HTTP 前世今生
HTTP 协议在我们身边随处可见,只要上网就离不开它.不论是用浏览器还是 App,不论是看新闻.短视频还是听音乐.玩游戏,后面总会有 HTTP 在默默为你服务. Http 协议是怎么来的?最开始是什么 ...
- python学习11函数
'''''''''函数:1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用2.语法:def 函数名([参数]): 函数体[return 返回值]3.函数名 ...
- 利用jsDeliver+github实现免费CDN
title: 利用jsDeliver+github实现免费CDN jsDeliver jsDelivr 是一个免费开源的 CDN 解决方案,用于帮助开发者和站长.包含 JavaScript 库.jQu ...
- 徐州赛区网络预赛 D Easy Math
比赛快结束的适合看了一下D题,发现跟前几天刚刚做过的HDU 5728 PowMod几乎一模一样,当时特兴奋,结果一直到比赛结束都一直WA.回来仔细一琢磨才发现,PowMod这道题保证了n不含平方因子, ...
- Linux系统应用管理:增加普通用户(密码管理等)
1. 查看当前Linux系统的版本.内核等信息 [root@oldboy ~]# cat /etc/redhat-release CentOS release 6.7 (Final) . # 系统版本 ...
- 【Linux常见命令】tail命令
tail - output the last part of files tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件. tail -f filename ...
- spring-boot下mybatis的配置
问题描述:spring boot项目想添加mybatis的配置,在src/main/resources目录下新建了mybatis-config.xml文件,在application.propertie ...
- Redis 6.0 正式版终于发布了!除了多线程还有什么新功能?
Redis 6.0.1 于 2020 年 5 月 2 日正式发布了,如 Redis 作者 antirez 所说,这是迄今为止最"企业"化的版本,也是有史以来改动最大的一个 Redi ...