Request Response对象由Web服务器创建
Request 使用request对象来获取请求数据
Response 使用response对象来设置响应数据
Request继承体系
ServletRequest---》Java提供的请求对象根接口
↑
HttpServletRequest---》Java提供的对Http协议封装的请求对象
↑
RequestFacade----》Tomcat定义的实现类
Request获取请求数据
*请求数据分为三部分
1.请求行:GET/web-demo/findOne?username=zhangsan HTTP/1.1
*String getMethod():获取请求方式GET
*String getContexPath():获取虚拟目录(项目访问路径):/requset
*StringBuffer getRequestURL():获取URL(统一资源定位符):http://localhost:8080/requset/req1
String getRequestURI(统一资源标识符):/requset/req1
String getQueryString():获取请求参数(GET方式):username=username=zhangsan&password=123
2.请求头 User-Agent:Mozilla/5.0 Chrome/91.0.4472.106
String getHeader(String name):根据请求头名称 获取值
@WebServlet("/req2")
public class demo2 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//来获取客户端浏览器的版本
String header = req.getHeader("user-agent");
//客户端的ip地址
String ip = req.getRemoteAddr();
System.out.println("ip地址为:"+ip);
System.out.println(header);//Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36
if (header.contains("Chrome")){
System.out.println("我是谷歌浏览器");
}else if (header.contains("Firefox")