JAVA WEB 重学day02

request对象

学习目标

1.能够使用工具查看HTTP协议内容
2.能够理解HTTP协议请求内容
3.能够使用Request对象获取HTTP协议请求内容
4.能够处理 HTTP 请求参数的乱码问题(一个方法)
5.能够使用Request 域对象(三个方法)
6.能够使用 Request 对象做请求转发(一个方法)

HTTP请求概述

HTTP请求:浏览器访问服务器的过程
HTTP组成:请求行 请求头 请求体
请求行概述
请求行格式:
POST请求:POST /day02/login HTTP/1.1
GET请求:GET /day02/login?username=jack&pwd=111 HTTP/1.1
请求行组成:请求方式 请求地址 协议和版本

请求头概述
JAVA WEB 重学day02
请求体概述
用户输入的内容
只要用户输入的并提交给服务器的数据都可以统称为请求参数
(Get没有请求体,POST才有)

HttpServletRequest对象概述

封装了所有的请求信息。这是一个接口,包含了大量的方法。由 Tomcat 去实现这个对象,并且在servlet 启动的时候调用 service()将请求对象传递进来了。我们在 doGet 或 doPost 中直接使用即可。
JAVA WEB 重学day02
JAVA WEB 重学day02
JAVA WEB 重学day02

** 参数的乱码问题**

乱码原因:Tomcat默认使用欧洲码表(ISO-8859-1:不支持汉字)解码参数
解决方法:
在获取请求参数之前通过请求对象的方法设置解码使用的码表,代码:request.setCharacterEncoding(“utf8”);

Servlet作用域概述

1.用于 Servlet 之间数据共享的服务器内存区域,作用域结构是一个 Map<String, Object>
2.在 Servlet 中一共有三个作用域:请求域、会话域、上下文域
3. 请求域的范围:只在同一次请求中起作用
JAVA WEB 重学day02

转发与重定向

作用:转发与重定向用于页面的跳转

特点:
1.转发在服务器端进行,地址栏不变,只请求一次但请求域中数据不会丢失
2.重定向在浏览器端进行,地址栏变成新的,请求2次且请求域中数据丢失
JAVA WEB 重学day02
JAVA WEB 重学day02