這篇文章主要介紹瞭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. shell学习(一)

    一.免密交互 --stdin 1.从标准输入读取字符串 如:passwd   --stdin   heruguo246 [root@localhost mnt]#    ---输入了修改heruigu ...

  2. Angular 5项目

    Angular 5项目 如果您正在使用angular, 但是没有好好利用angular cli的话, 那么可以看看本文. Angular CLI 官网: https://github.com/angu ...

  3. 黑马程序员_java基础笔记(14)...交通灯管理系统_编码思路及代码

    —————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流! —————————— 1,面试题——交通灯管理系统 模拟实现十字路口的交通灯管理系统逻辑,具体需求如下: ...

  4. QT5 QSS

    设计Qt程序Ui的时候,可以像WEB端使用CSS一样,使用QSS,使页面美化跟代码层分开,利于维护. 过程如下: 1.建立文本文件,写入样式表内容,更改文件后缀名为qss: 2.在工程中新建资源文件* ...

  5. Spring拦截器和过滤器

    什么是拦截器 拦截器(Interceptor): 用于在某个方法被访问之前进行拦截,然后在方法执行之前或之后加入某些操作,其实就是AOP的一种实现策略.它通过动态拦截Action调用的对象,允许开发者 ...

  6. 008.MySQL-Keepalived搭配脚本02

    vim /etc/keepalived/check_MySQL.sh #!/bin/sh #isok=$(sed -n '2p' /etc/keepalived/result.txt) isok=$( ...

  7. FreeMarker快速入门

    虽然当前比较推荐使用thymeleaf替代jsp作为java网页开发的模板语言,不过公司推荐使用freemarker,那就顺势而为,速度学一发,然后迅速开始新项目了. 简介 FreeMarker第一个 ...

  8. C++ 队列(queue)堆栈(stack)实现基础

    Queue 在C++中只要#include<queue>即可使用队列类,其中在面试或笔试中常用的成员函数如下(按照最常用到不常用的顺序) 1. push 2. pop 3. size 4. ...

  9. BZOJ 4636: 蒟蒻的数列 分块

    4636: 蒟蒻的数列 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=4636 Description 蒟蒻DCrusher不仅喜欢玩扑克 ...

  10. Maven具体解释之------maven版本号管理

    本文同意转载,但请标明出处:http://blog.csdn.net/wanghantong/article/38424065, 版权全部 如今所说的maven版本号不同于SVN的版本号控制哦!!! ...