HttpServletRequest对象
一、HttpServletRequest对象作用:是用于获取请求数据。
二、取出请求行:
package sram.request;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FirstRequest extends HttpServlet {
/**
* 1)tomcat服务器接收到浏览器发送的请求数据,然后封装到HttpServetRequest对象
* 2)tomcat服务器调用doGet方法,然后把request对象传入到servlet中。
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
/**
* 3)从request对象取出请求数据。
*/
/**
* 取出请求行 格式:(GET /servlet_test/FirstRequest HTTP/1.1
)
*/
//请求方式
System.out.println("请求方式:"+request.getMethod());
//请求资源URI
System.out.println("URI:"+request.getRequestURI());
//请求资源URL
System.out.println("URL:"+request.getRequestURL());
//HTTP协议
System.out.println("HTTP协议:"+request.getProtocol());
}
}
注意:封装指定代码步骤:选中所封装代码——>右键——>refactor——>extract method
三、取出请求头:
四、取出实体内容:
1)对之前的testMethod.html代码做小改动:
2)Servlet代码:
五、核心的API:
1、请求行:
request.getMethod(); 请求方式
request.getRequetURI() / request.getRequetURL() 请求资源
request.getProtocol() 请求http协议版本
2、请求头:
request.getHeader(“名称”) 根据请求头获取请求值
request.getHeaderNames() 获取所有的请求头名称
3、实体内容:
request.getInputStream() 获取实体内容数据