1.请求行
1.1:提交方法——如果重写service方法,容器不会自动调用doXXX()方法
1.2:请求的URL
1.3: HTTP版本——
1.4:方法
1.4.1:getMethod()——返回请求方法
1.4.2:getRequestURI()——返回uri。
*Web上可用的每种资源 - HTML文档、图像、视频片段、程序等由一个通用资源标志符(Universal Resource Identifier, 简称"URI")进行定位。
1.4.3:getRequestURL()——返回网络路径
1.4.4:getQueryString()——返回参数(用户数据)
1.4.5:getProtocol()——返回协议
1.4.6:getContextPath()——返回目录、getServletPath()——返回url-Pattern
2.请求头——浏览器的描述、要求信息
2.1:方法
2.1.1:getHeader(String)——有多个值时返回最后一个、getHeader(String)——返回枚举
2.1.2:getInt/DateHeader(,)——
2.1.3:getHeaderNames()——获得所有键,值去重
3.空行
4.消息体
4.1方法
4.1.1:获得表单数据
4.1.1.1:getParameter(String name)、getParameterValues(String name)——name区分大小写,与表单中name键一致
4.1.1.2:getParameterNames()——返回参数名列表(枚举
4.1.2:获得原始表单数据 ——条件:数据非HTML表单提交;数据来自上传文件
4.1.2.1:getInputStream()、getReader()
*二进制——将表单属性 enctype设置为multipart/form-data
5.请求转发
5.1:定义——每个客户的请求可以在web应用程序内部资源之间跳转,整个过程完全在服务器端完成。
5.2:获得RequestDispatcher对象——ServletRequest.getRequestDispatcher(String path)——path必须以/开始,容易把path作为根目录,方便跳转,否则路径相对原来的请求 ;ServletRequest.getRequestDispatcher(String name)——name在web.xml中servlet-name中存在。
5.3:forward(ServletRequest,ServvletResponse)——只输出跳转后网页内容
5.4:includes(ServletRequest,ServvletResponse) ——输出所有相关网页内容;能包含服务器端的资源,被包含的资源不能改变相应状态码和设置头信息。
6.request类
6.1:HttpServletRequest