HttpServletRequest类

HttpServletRequest类

  • 作用

    • 每次只要有请求进入Tomcat服务器,Tomcat服务器就会把请求过来的HTTP协议信息解析好封装到Request对象中。然后拍传递到Service方法(doGet和doPost)中给我们使用。我们可以通过HttpServiceRequest对象,获取到所有请求的信息。
  • HttpServletRequest类的常用方法

    方法说明
    getRequestURI()获取请求的资源路径
    getRequestURL()获取请求的统一的资源定位符
    getRemoteHost()获取客户端的ip地址
    getHeader()获取请求头
    getParameter()获取请求的参数
    getParameterValues()获取请求的参数(多值)
    getMethod()获取请求的方法
    setAttribute(key,value)设置域数据
    getAttribute(key)获取域数据
    getRequestDispatcher()获取请求转发对象
  • 如何获取请求的参数

  • 请求转发

    • 请求转发是指,服务器收到请求后,从一个资源跳转到另一个资源的操作请求
  • WEB中的相对路径和绝对路径

    • 相对路径:

      符号说明
      .表示当前目录
      表示上一级目录
      资源名表示当前目录/资源名
    • 绝对路径

      http://ip:port/工程路径/资源路径

  • WEB中’/‘斜杠的不同意义

    • 在WEB中/ 斜杠是一种绝对路径。
    • / 斜杠如果别浏览器解析,得到的地址是:http://ip:port
    • / 斜杠如果被服务器解析,得到的地址是:http://ip:port/工程路径
      • /servlet1
      • servletContext.getRealPath("/");
      • request.getRequestDispatcher("/");
      • 特殊:reponse.sendRediect("/");把斜杠发送给浏览器,得到http://ip:port/

HttpServletResponse类

  • HttpServletResponse类的作用

    HttpServletResponse类和HttpServletRequest类一样。每次请求进来,Tomcat服务器都会创建一个response对象传递给Servlet程序去使用。HttpServletRequest表示请求过来的信息,HttpServletResponse表示所有响应的信息,可以通过HttpServletResponse对象进行设置返回给客户端的信息。

  • 两个输出流的说明

    字节流 getOutputStream(); 常用于下载(传递二进制数据)

    字符流 getWriter(); 常用于回传字符串

    两个流同时只能使用一个。

  • 服务器,浏览器显示字符集修改

    • 服务器:

      resp.setCharacterEncoding("utf-8");
      
    • 浏览器:

      resp.setHeader("Content-Type","text/html; charset = UTF-8");
      
    • 同时设置:

      resp.setContentType("text/html;charset=utf-8");
      

      注意:此方法一定在获取流对象前才有效

  • 请求重定向

    请求重定向,是指客户端给服务器请求,然后服务器告诉客户端说。我给你一些新地址,你去新地址访问。叫请求重定向(因为以前的地址可能已经废弃)。

    响应码状态码 302

    Location响应头 新地址

    • 特点:
      • 浏览器地址会发生变化
      • 两次请求
      • 不共享Request域中的数据
      • 不能访问WEB-INF下的资源
      • 可以访问工程外的资源
  • 请求重对象第二种方法(推荐)

    resp.sendRedirect("http://localhost:8080");
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文D刀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值