request对象
服务器接收到浏览器的请求后 为了存储此次请求中的数据 服务器(以多线程方式)会创建一个request对象来存储 再将这个request对象作为参数传递给servlet内的相关函数
request对象继承体系(详情于tomcat源码)
ServletRequest --接口
|继承
HttpServletRequest
|实现
org.apache.catalina.connector.RequestFacade(类 由tomcat创建)
idea中关联tomcat源码:选择源码时,选择apache-tomcat-8.5.38-src.zip/src/java即可,不需要包含其他文件夹,因为只有java文件夹下才存放了源码
tomcat源码下载
http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.38/src/
- request对象(HttpServletRequest)的作用:存储当前请求的所有信息
- 使用:
-
- 获取请求头的数据
获取浏览器提交请求的方式req.getMethod()
获取提交请求的URL
获取请求提交的协议
request功能
- 获取请求行数据
假设请求行为:
GET /day14/demo1?name=zhangsan
1.获取请求方式:get
*string getMethod();
2.获取虚拟目录:/day14
*string getContextPath()
3.获取servlet路径/demo1
*string getServletPath()
4.获取get方式请求参数:name=zhangsan
*string getQueryString()
5.获取请求URI:/day14/demo1
*string getRequestURI
统一资源标识符 共和国
*stringBuffer getRequestURL
统一资源定位符 中华人民共和国
6.获取协议以及版本号:HTTP/1.1
*string getProtocol()
7.获取客户机的IP地址
*string getRemoteAddr()
-
- 获取请求体数据(关键)