java HttpServletRequest和HttpServletResponse詳解
這篇文章主要介紹瞭java HttpServletRequest和HttpServletResponse詳解的相關資料,需要的朋友可以參考下
java HttpServletRequest和HttpServletResponse詳解
最近由於CAS相關的JAR包的重新封裝,所以想盡量做到0配置,而這個過程中大量使
用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類型 |
感謝閱讀,希望能幫助到大傢,謝謝大傢對本站的支持!
from: http://www.15jb.net/java-httpservletrequest%E5%92%8Chttpservletresponse%E8%A9%B3%E8%A7%A3
java HttpServletRequest和HttpServletResponse詳解的更多相关文章
- HttpServletRequest和HttpServletResponse详解
请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方 法 说 明 ServletInputStream Servlet的输入流 ...
- HttpServletRequest 和 HttpServletResponse详解
用HttpServletRequest,现在整理如下,以便以后查阅 请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方 法 说 ...
- Java第三阶段学习(十二、HttpServletRequest与HttpServletResponse)
一.HttpServletRequest 1.概述: 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和 ...
- Java Web(一) Servlet详解!!
这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本个人觉得很棒的书,<Java Web 整合开发王者归来>,现在写的这一系列基 ...
- (转)Java Web(一) Servlet详解!!
https://www.cnblogs.com/whgk/p/6399262.html 这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本 ...
- JAVA笔试题(全解)
目录 一. Java基础部分................................................................. 9 1.一个".java& ...
- 基于java配置log4j日志详解
1.Log4j 1.1了解Log4j Log4j是Apache的一个开源项目,通过使用log4j,我们可以控制日志信息输送的目的地可以是控制台.文件.GUI组件,我们也可以控制每一条日志的输出格式,通 ...
- SpringMVC常用注解實例詳解3:@ResponseBody
我的開發環境框架: springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...
- SpringMVC常用注解實例詳解2:@ModelAttribute
我的開發環境框架: springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...
随机推荐
- non linear processor
由于自适应滤波器只能估算回音的近似值,因此它并不能将回音完全消除,也就是说,仍然有些残余的回音(Lres)留在信号当中.在任何时刻中,暂存器中的准确性正是决定残余回音音量的关键所在.如果残 ...
- Oracle数据库11gR2的卸载 - deinstall
从Oracle 11gR2开始,Oracle推荐使用deinstall来卸载Oracle数据库.使用Oracle Universal Install(OUI) 的图形方式来卸载Oracle数据库软件了 ...
- HTTP协议-缓存
HTTP 协议中,缓存更多关心的文档资源的再利用.其目的是减少数据传输,加快相应速度等等.而对于缓存采用的是什么方案,也就是存在内存中还是硬盘中之类的问题,就属于另外的内容了. 假设,我身在广东,但是 ...
- Codeforces.838E.Convex Countour(区间DP)
题目链接 \(Description\) 给定一个n边凸多边形(保证没有三点共线),求一条经过每个点最多一次的不会相交的路径,使得其长度最大.输出这个长度. \(Solution\) 最长路径应该是尽 ...
- [HDU2138]How many prime numbers
来源: HDU 2007-11 Programming Contest_WarmUp 题目大意:素数判定. 思路: 事实上暴力判定也可以过,但我还是用了Miller-Rabin算法. 核心思想:利用费 ...
- 某题目2 状压DP
Description 对于一个数列,其混乱度定义为连续相等的数的段数.如:1 2 1 2 1,其混乱度为5,而:1 2 2 3 3,其混乱度为3.现给出一个数列,允许取出k个数并允许插入数列中的任意 ...
- OpenNI2 + NiTE2开发教程
发现了一个非常不错的关于自然交互OpeNI2+NiTE2的资源,非常感谢Heresy,这里分享链接: OpenNI 2.x 教学文章(转载自:Heresy博客,地址:https://kheresy.w ...
- 使用ptrace向已运行进程中注入.so并执行相关函数(转)
1. 简介 使用ptrace向已运行进程中注入.so并执行相关函数,其中的“注入”二字的真正含义为:此.so被link到已运行进程(以下简称为:目标进程)空间中,从而.so中的函数在目标进程空间中有对 ...
- .yaml 文件格式简介
命名 YAML 的意思其实是:"Yet Another Markup Language"(仍是一种置标语言)的缩写. 功能 YAML的语法和其他高阶语言类似,并且可以简单表达清单. ...
- java系列之 原生数据类型
在我看来,java里面里面除了原生类型不是对象,其他的都是对象.但java是面向对象的语言,很多地方还要要操作对象,所以java会自动把原生类型转为对应的包装类型.这个过程叫自动装箱.有装箱就有拆箱, ...