【JavaWeb】Response和Request对象的概述

目录

一、什么是Response

1.画图说明Response对象

2.Response对象的API

2.1Response关于响应行的方法

2.2Response关于响应头的方法

2.3Response关于响应体的方法

2.4Response其他的API 

3.Response对象的API的代码演示

3.1设置状态码

3.2完成重定向 

3.3定时刷新效果

4.页面定时跳转的扩展

4.1在HTML中完成页面跳转

5.Response对象响应的中文乱码处理

5.1Response向页面响应中文

二、Request对象的概述及API的介绍

1.什么是Request对象

Request对象的API:

1.1获得客户机信息:

2.2获得请求头的方法 

2.3获得请求参数的方法 

2.4Request作为域对象存取数据的方法 

2.5Request作为域对象作用范围

2.Request对象的API的代码演示

2.1Request对象获取客户机信息

2.2Request获得请求头的信息

3.Request对象接收表单请求参数

3.1编写一个静态页面:

3.2接收请求参数

4.Request对象接收表单请求参数的中文乱码处理

4.1Request对象接收中文数据:


一、什么是Response

开发的软件是B/S结构的软件,可以通过浏览器访问服务器的软件。从浏览器输入一个地址访问服务器(将这个过程称为是请求)。服务器接收到请求,需要进行处理,处理以后需要将处理结果显示回浏览器端(将这个过程称为是响应)。

1.画图说明Response对象

2.Response对象的API

2.1Response关于响应行的方法

 设置响应的状态码:

  • 200 正确
  • 302 重定向
  • 304 查找本地缓存
  • 404 请求资源不存在
  • 500 服务器内部错误

2.2Response关于响应头的方法

set开头的方法:针对一个key对应一个value的情况。

举例:比如有一个头 content-Type:text/html 我们使用 setHeader(“content-Type”,”text/plain”)后;

最终得到头的结果:content-Type:text/plain

add开头的方法:针对一个key对应多个value的情况。(它是在原来的基础上追加)

举例:比如有一个content-Type:text/html我们使用addHeader(“content-Type”,”text/plain”)后;

最终得到头的结果:content-Type:text/html,text/plain

2.3Response关于响应体的方法

2.4Response其他的API 

重定向的方法:

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

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

服务器向浏览器回写Cookie的方法:

3.Response对象的API的代码演示

3.1设置状态码

3.2完成重定向 

重定向:302状态码和Location响应头结合使用的效果。

实际开发中可以使用:

response.sendRedirect(“/web01/ResponseDemo2”);替换重定向两句写法

3.3定时刷新效果

4.页面定时跳转的扩展

4.1在HTML中完成页面跳转

使用JS完成读秒效果 :

5.Response对象响应的中文乱码处理

5.1Response向页面响应中文

5.1.1使用字节流响应中文

使用上述代码向页面输出中文是否会有乱码?

  1. 不一定其实这个乱码的产生与中文转成字节数组及浏览器打开方式(打开的时候采用的默认字符集)有关
  2. 解决:将中文转成字节数组的时候和浏览器默认打开的时候采用的字符集一致即可。

5.1.2使用字符流响应中文:

使用上述代码向页面输出中文是否会产生乱码?

  1. 一定乱码原因:字符流是有缓冲区的,response获得字符流,response设计默认的缓冲区编码是ISO-8859-1。这个字符集不支持中文的。
  2. 解决:设置response获得字符流缓冲区的编码和设置浏览器默认打开时候采用的字符集一致即可。

 字符流向页面响应中文,有一种简化的方式:

二、Request对象的概述及API的介绍

1.什么是Request对象

开发的软件都是B/S结构软件,从浏览器向服务器提交一些数据,将这些内容进行封装就封装成了一个请求对象(Request对象)。

Request对象的API:

1.1获得客户机信息:

  1. 获得请求的方式:

     2.获得请求路径后的提交参数的字符串:

      3.获得请求路径的URL和URI:

        4.获得客户机的IP地址

2.2获得请求头的方法 

  1. 获得一个key对应一个value的请求头:

      2.获得一个key对应多个value的请求头

2.3获得请求参数的方法 

  1. 获得提交的参数(一个name对应一个value)

     2.获得提交的参数(一个name对应多个value)

     3.获得提交的参数,将提交的参数的名称和对应的值存入到一个Map集合中

2.4Request作为域对象存取数据的方法 

  1. 向request域中存数据

      2.从request域中获取数据

       3.从request域中移除数据

2.5Request作为域对象作用范围

Request对象其实就是从客户端浏览器向服务器发送的一次请求信息的封装。那么实质上向Request中所保存的数据有效期也是一次请求范围。

一次请求范围:从客户端浏览器向服务器发送一次请求,服务器针对这次请求对浏览器作出响应。当服务器作出响应之后,请求对象就销毁了,保存在其中的数据就无效了。

2.Request对象的API的代码演示

2.1Request对象获取客户机信息

2.2Request获得请求头的信息

3.Request对象接收表单请求参数

3.1编写一个静态页面:

3.2接收请求参数

4.Request对象接收表单请求参数的中文乱码处理

4.1Request对象接收中文数据:

POST方式接收中文:

GET方式接收中文:

猜你喜欢

转载自blog.csdn.net/wang_qiu_hao/article/details/126513561
今日推荐