這篇文章主要介紹瞭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. 【LOJ】#2524. 「HAOI2018」反色游戏

    题解 如果一个联通块是一个树的话,方案数就一种,如果这个联通块还有别的边,那选了一条别的边就会把树上对应路径全部取反,所以方案数是\(2^{m - n + 1}\) 如果联通块数为\(c\)方案数为\ ...

  2. JDBC事务与事务隔离级别详解

    事务基本概念 一组要么同时执行成功,要么同时执行失败的SQL语句.是数据库操作的一个执行单元. 事务开始于: 连接到数据库上,并执行一条DML语句insert.update或delete 前一个事务结 ...

  3. MapReduce原理1

    Mapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架: Mapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算 ...

  4. 005 jquery过滤选择器-----------(内容过滤选择器)

    1.介绍 2.程序 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  5. SSH Secure Shell Client安装和使用

    SSH是一个用来替代TELNET.FTP以及R命令的工具包,主要是想解决口令在网上明文传输的问题.为了系统安全和用户自身的 权益,推广SSH是必要的. SSH是英文Secure Shell的简写形式. ...

  6. 001.Chrony时间服务器

    一 Chrony概览 1.1 Chrony简介 Chrony是一个开源的自由软件,是网络世界协议(NTP)的另一种实现,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确. 它由两个程序组成: ...

  7. SpringMVC框架03——数据绑定

    1.绑定基本数据类型 在Controller类中添加业务方法: /** * 绑定基本数据类型 */ @RequestMapping("/baseType") @ResponseBo ...

  8. JAVA 传递

    其实java里面都是传值,只不过基本数据类型传的是数值,而引用类型传的是对象的地址. 作者:Intopass链接:https://www.zhihu.com/question/31203609/ans ...

  9. openQPA[01]初次认识与使用

    开源项目QPA 1.项目主页:[http://protocol.sinaapp.com/] 2.项目介绍: 3.运行项目: (1)安装python2.7,并安装PyQt4.   下载地址[https: ...

  10. BZOJ.1014.[JSOI2008]火星人(Splay 二分 Hash)

    题目链接 后缀数组显然不行啊.求LCP还可以哈希+二分,于是考虑用平衡树维护哈希值. \[某一节点的哈希值 = hs[lson]*base^{sz[rson]+1} + s[rt]*base^{sz[ ...