一、HTTP请求协议
- get方法
请求行(请求方式 uri 协议版本号)
请求头
- post方法
请求行
请求头
空白行
请求体(存放需要传输过去的数据)
二、get请求和post请求
get请求
- get'请求没有请求体,传输的数据是放在地址栏上的
- 对传输的数据有所限制,只能是字符串,长度也有限制,一般不超过2k
- get是期望从服务器中拿到数据
- get请求比较安全
- get请求有缓存
post请求
- post请求有请求体,传输的数据是放在请求体中的
- post请求对数据没有限制,可以不单单是字符串,长度没有限制
- post是期望把数据传输给服务器
- post请求比较不安全
- post是没有缓存的
三、HttpServletRequest
1、是由谁创建的?
- tomcat容器给我们创建的
2、httpServelRequest是用来做什么的?
- 是一个请求对象,使用接收http请求的,浏览器向服务器传输的数据,tomcat会把这些数据封装到 request对象中。因为我们发送的数据是满足http协议的。
3、采用什么样的数据结构来封装这些数据。
- 使用Map来封装数据,Map<String,String[]>.
4、获取request对象中的数据的常用方法
(1)获取存放参数的map
String username = req.getParameter("username");
(2)根据key获取到value值
String[] hobbies = req.getParameterValues("hobby");
(3)获取虚拟地址
String contextPath = req.getContextPath();
(4)获取请求方法
String method = req.getMethod();
(5)向请求域中存放数据
req.setAttribute("username","admin");
(6)获取请求域中数据
String username = (String) request.getAtrribute("username);
5、请求域
- request又叫做请求域
- 请求域的生命周期
————————————— 一个service方法结束后,请求域的生命周期就结束了,或者说一个请求结束,请求域的生命周期就结束了