這篇文章主要介紹瞭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詳解的更多相关文章

  1. HttpServletRequest和HttpServletResponse详解

    请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方    法 说    明 ServletInputStream Servlet的输入流 ...

  2. HttpServletRequest 和 HttpServletResponse详解

    用HttpServletRequest,现在整理如下,以便以后查阅 请求与响应相关的类和接口非常多,下表是主要的与请求和接口相关的类以及接口. 主要的与请求和接口相关的类及接口 方    法 说    ...

  3. Java第三阶段学习(十二、HttpServletRequest与HttpServletResponse)

    一.HttpServletRequest 1.概述: 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和 ...

  4. Java Web(一) Servlet详解!!

    这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本个人觉得很棒的书,<Java Web 整合开发王者归来>,现在写的这一系列基 ...

  5. (转)Java Web(一) Servlet详解!!

    https://www.cnblogs.com/whgk/p/6399262.html 这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本 ...

  6. JAVA笔试题(全解)

      目录 一. Java基础部分................................................................. 9 1.一个".java& ...

  7. 基于java配置log4j日志详解

    1.Log4j 1.1了解Log4j Log4j是Apache的一个开源项目,通过使用log4j,我们可以控制日志信息输送的目的地可以是控制台.文件.GUI组件,我们也可以控制每一条日志的输出格式,通 ...

  8. SpringMVC常用注解實例詳解3:@ResponseBody

    我的開發環境框架:        springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...

  9. SpringMVC常用注解實例詳解2:@ModelAttribute

    我的開發環境框架:        springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...

随机推荐

  1. CSS------ul与div如何排成一行

    如图: 代码:(需要给div的float属性设置为left) <div style="margin-top:10px"> <div style="flo ...

  2. 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 ...

  3. elasticsearch query dsl

    1.match / match_phrase / match_phrase_prefix / multi_match[查询] 1.1 match 它会根据所给的字符串,进行分词,然后去找出,包含这些分 ...

  4. 给虚拟机下面的ubuntu系统增加硬盘存储空间

    给虚拟机下面的ubuntu系统增加硬盘存储空间   由于ubuntu系统是安装在vsphere上面的,所以可能会和vmware上面的有一点区别,打开exsi系统的配置页面,如下图所示. 选择添加存储器 ...

  5. HNOI2018酱油记

    按照惯例,每次比赛完以后都要写酱油记. Day0: 明天就要省选了,今天同学们都回去了(因为后天要去春游),整个年级只剩下竞赛生.本来打算晚上好好复习一下,结果......颓了一晚上......(好吧 ...

  6. catalan数的新理解

    catalan数的新理解h[5]==h[4][0]+h[3][1]+h[2][2]+h[1][3]+h[0][4];对于这种递推式就是catalan数

  7. odoo 工作流

    odoo工作流 介绍 新版本的odoo开始减少workflow的使用,推荐使用workflow-ish的方式来处理工作流过程 很多模块中还是使用到工作流,这里我记录一个简单的实例,欢迎大家给出建议. ...

  8. OSI 7层 TCP/IP 4层

    在网络层有{ IP协议:IP协议是用于将多个包交换网络连接起来的,它在源地址和目的地址之间传送一种称之为数据包的东西,它还提供对数据大小的重新组装功能,以适应不同网络对包大小的要求. ICMP协议:I ...

  9. handlebars.min.js的使用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. ConcurrentHashMap内存溢出问题

    写在前面 上周,同事写了一段ConcurrentHashMap的测试代码,说往map里放了32个元素就内存溢出了,我大致看了一下他的代码及运行的jvm参数,觉得很奇怪,于是就自己捣鼓了一下.首先上一段 ...