2020-03-18

Response&Request

(一)

Response

对象的概述

一、什么是

Response

我们开发的软件是

B/S

结构的软件,是可以通过浏览器访问服务器的软件

从浏览器输入一个地址,访问服务器的这个过程称为请求。服务器接收到请求

需要进行处理,处理以后,还需要将处理结果发回浏览器端显示,这个过程称

为响应

(二)

Response

对象的

API

一、

Response

关于响应行的方法

setStatus(int sc)

设置响应的状态码

200

成功

302

重定向

304

查找本地缓存

404

请求资源不存在

500

服务器内部错误

二、

Response

关于响应头的方法

setDateHeader(String name, long date)

setHeader(String name, String value)

setIntHeader(String name, int value)

set

开头的方法用于设置:针对一个

key

对应一个

value

的情况

举例:原头信息

Content-Type:text/html

调用

setHeader("Content-Type","text/html");

最终结果:

Content-Type:text/html

三、

Response

关于响应体的方法

getOutputStream()

将二进制字节发送到客户端

getWriter()

将字符文本发送到客户端

用于向浏览器端输出内容

四、

Response

其他的

API

addCookie(Cookie cookie)

服务器向浏览器回写

Cookie

的方法

sendRedirect(String location)

重定向的方法

setContentType(String type)

设置浏览器打开页面时候采用的字符集

setCharacterEncoding(String charset)

设置响应字符流的缓冲区的字符集

五、

Response

对象的

API

的代码演示

1

)设置状态码

2

)完成重定向

1

)重定向:是

302

状态码和

Location

响应头结合使用的效果

2

)实际开发中可以使用

response.sendRedirect("/web01/ResponseDemo2");

替换重定向那两句的写法


3

)完成定时刷新效果

六、

页面定时跳转的扩展

1

)使用

JS

完成读秒的效果

三)

Response

对象响应的中文乱码处理

一、使用字节流响应中文

1

、编写代码

2

、向页面输出中文是否会有乱码?不一定!

3

、原因:其实这个乱码的产生,与中文转成字节数组,以及浏览器的打开

方式(打开的时候采用的默认字符集)有关

4

解决:将中文转成字节数组的时候,和浏览器默认打开的时候采用的字

符集一致即可

二、使用字符流响应中文

1

、编写代码

2

、向页面输出中文是否会有乱码?一定乱码

3

、原因:字符流是有缓冲区的,

Response

获得字符流,老外设计默认的缓

冲区编码是

ISO-8859-1

,这个字符集不支持中文

4

、解决:设置

Response

获得字符流缓冲区的编码,和设置浏览器默认打

开时采用的字符集一致即可

(四)

Request

对象的概述及

API

的介绍

一、

Request

对象的概述

什么是

Request

对象

我们开发的软件都是

B/S

架构的软件,从浏览器向服务器提交一些数据

时,将这些数据内容进行封装,封装成一个请求对象,即

Request

对象

二、

Request

对象的

API

1

、获得客户端的信息

getMethod()

获得请求的方式

getQueryString()

获得查询字符串的(即请求路径后的提交参数字符

串)

getRequestURI()

获得请求路径的

URI

getRequestURL()

获得请求路径的

URL

getRemoteAddr()

获得客户端的

IP

地址

2

、获得请求头的方法

getHeader

获得一个

Key

对应一个

Va

l

ue

的请求头

getHeaders

获得一个

Key

对应多个

Va

l

ue

的请求头

3

、获得请求参数的方法

getParameter

获得提交的参数(一个

name

对应一个

v

a

l

ue

getParameterVa

l

ues

获得提交的参数(一个

name

对应多个

v

a

l

ue

getParameterMap()

获得提交的参数,将提交的参数

称和对应的

入到一个

Map

集合中

4

Request

对象存

数据的方法

setAttribute

Request

中存数据

getAttribute

Request

数据

remo

v

eAttribute

Request

移除

数据

三、

Request

对象的

API

的代码演示

1

Request

对象获

客户端信息

2

Request

获得请求头的信息

四、

Request

对象接收

表单

请求参数

1

、编写一个

态页面

2

、接收请求参数

3

Request

对象接收

表单

请求参数的中文乱码处理

POST

方式接收中文

GE

T

方式接收中文

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Response&Request (一)Response对象的概述 一、什么是Response 我们开发的软件...
    你养猪吗阅读 169评论 0 0
  • Response&Request (一)Response对象的概述 一、什么是Response 我们开发的软件...
    董宇浩阅读 112评论 0 0
  • Response&Request (一)Response对象的概述 一、什么是Response 我们开发的软件...
    小汤源O阅读 117评论 0 0
  • 什么是Response 我们开发的软件是B/S结构的软件,是可以通过浏览器访问服务器的软件。从浏览器输入一个地...
    Key_L阅读 156评论 0 0
  • 我的梦是一支彩色画笔 它可以在心上的白纸画画 它可以只有七种颜色 然后画下夏日的雨 和池塘里的鱼 我更想画下太阳下...
    徐徐987阅读 268评论 0 3