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 ...
随机推荐
- CSS------ul与div如何排成一行
如图: 代码:(需要给div的float属性设置为left) <div style="margin-top:10px"> <div style="flo ...
- vue播放video插件vue-video-player实现hls, rtmp播放全过程
1.安装插件 1 npm install vue-video-player -S 2.配置插件 在main.js里添加 1 import VideoPlayer from 'vue-video-pla ...
- elasticsearch query dsl
1.match / match_phrase / match_phrase_prefix / multi_match[查询] 1.1 match 它会根据所给的字符串,进行分词,然后去找出,包含这些分 ...
- 给虚拟机下面的ubuntu系统增加硬盘存储空间
给虚拟机下面的ubuntu系统增加硬盘存储空间 由于ubuntu系统是安装在vsphere上面的,所以可能会和vmware上面的有一点区别,打开exsi系统的配置页面,如下图所示. 选择添加存储器 ...
- HNOI2018酱油记
按照惯例,每次比赛完以后都要写酱油记. Day0: 明天就要省选了,今天同学们都回去了(因为后天要去春游),整个年级只剩下竞赛生.本来打算晚上好好复习一下,结果......颓了一晚上......(好吧 ...
- catalan数的新理解
catalan数的新理解h[5]==h[4][0]+h[3][1]+h[2][2]+h[1][3]+h[0][4];对于这种递推式就是catalan数
- odoo 工作流
odoo工作流 介绍 新版本的odoo开始减少workflow的使用,推荐使用workflow-ish的方式来处理工作流过程 很多模块中还是使用到工作流,这里我记录一个简单的实例,欢迎大家给出建议. ...
- OSI 7层 TCP/IP 4层
在网络层有{ IP协议:IP协议是用于将多个包交换网络连接起来的,它在源地址和目的地址之间传送一种称之为数据包的东西,它还提供对数据大小的重新组装功能,以适应不同网络对包大小的要求. ICMP协议:I ...
- handlebars.min.js的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ConcurrentHashMap内存溢出问题
写在前面 上周,同事写了一段ConcurrentHashMap的测试代码,说往map里放了32个元素就内存溢出了,我大致看了一下他的代码及运行的jvm参数,觉得很奇怪,于是就自己捣鼓了一下.首先上一段 ...