目录
一.Request 继承体系
- Tomcat 需要解析请求数据,封装为 Request 对象,并且创建 Request 对象,传递到 service方法中
- 使用 Request 对象,可通过查询 JavaEE API 文档的 HttpServletRequest 接口
二.Request 获取请求数据
- 请求行
GET /request-demo/req1?username=zhangsan HTTP/1.1 <!--这是请求行,我将以这个为例子讲解-->
String getMethod(); //获取请求方式 这里是:GET String getContextPath(); //获取虚拟目录(项目的访问路径)(动态) 这里是:/request-demo StringBuffer getRequestURL(); //获取URL(统一资源定位符) 这里是:http://localhost:8080/request-demo/req1 String getRequestURI(); //获取URI(统一资源标识符) 这里是:/request-demo/req1 String getQueryString(); //获取请求参数(GET方式) 这里是:username:zhangsan&password=123
- 请求头
User-Agent: Mozilla/5.0 Chrome/91.0.4472.106 <!--这是请求头-->
String getHeader(String name); //根据请求头名称,获取值
- 请求体
username=superbaby&password=123 <!--这是请求体-->
ServletInputStream getInputStream(); //获取字节输入流 BufferedReader getReader(); //获取字符输入流
三.Request 通用方式获取请求参数
请求参数的获取方式有两种:
- GET 方式
String getQueryString(); //GET方式获取请求参数
- POST 方式
BufferedReader reader = request.getReader(); String parameter = reader.readLine(); //POST 方式获取请求参数
通用的请求方法:
Map<String,String[]> getParameterMap(); //获取所有参数 Map 集合 String[] getParameterValues(String name); //根据名称 获取参数值(数组) String getParameter(String name) //根据名称 获取参数值(单个值)
四. Request 请求参数中文乱码的处理
五.Request 请求转发