zoukankan      html  css  js  c++  java
  • response发送状态码

    4打头,都是客户端的错误

    5大头,都是服务器的错误

    3大头,都是中转

    2打头,都是成功

    ------------------------------------------------------

    response:其类型为HttpServletResponse
    ServletResponse-->与协议无关的类型
    HttpServletResponse-->与http协议相关的类型

      回忆一下http协议!http协议中响应的内容包含哪些东西呢?
      * 状态码:200表示成功、302表示重定向、404表示客户端错(访问的资源不存在)、500表示服务器端错
        > sendError(int sc) --> 发送错误状态码,例如404、500
        > sendError(int sc, String msg) --> 也是发送错误状态码,还可以带一个错误信息!
        > setStatus(int sc) --> 发送成功的状态码,可以用来发送302
        案例:
        > 发送404
      * 响应头:Content-Type、Refresh、Location等等
        头就是一个键值对!可能会存在一个头(一个名称,一个值),也可能会存在一个头(一个名称,多个值!)
        > *****setHeader(String name, String value):适用于单值的响应头,例如:response.setHeader("aaa", "AAA");
        > addHeader(String name, String value):适用于多值的响应头
    response.addHeader("aaa", "A");
    response.addHeader("aaa", "AA");
    response.addHeader("aaa", "AAA");
        > setIntHeader(String name, int value):适用于单值的int类型的响应头
    ` response.setIntHeader("Content-Length", 888);
        > addIntHeader(String name, int value):适用于多值的int类型的响应头
        > setDateHeader(String name, long value):适用于单值的毫秒类型的响应头
    response.setDateHeader("expires", 1000 * 60 * 60 * 24);
        > addDateHeader(String name, long value):适用于多值的毫秒类型的响应头
        案例:
        > 发送302,设置Location头,完成重定向!
        > 定时刷新:设置Refresh头,你可以把它理解成,定时重定向!
        > 禁用浏览器缓存:Cache-Control、pragma、expires
        > <meta>标签可以代替响应头:<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      * 响应体:通常是html、也可以是图片!
        > response的两个流:
          <> ServletOutputStream,用来向客户端发送字节数据。ServletOutputStream out = resopnse.getOutputStream();
          <> PrintWriter,用来向客户端发送字符数据!需要设置编码。PrintWriter writer = response.getWriter();
          <> 两个流不能同时使用!
        案例:
        > 使用PrintWriter发送字符数据
        > 使用ServletOutputStream发送字节数据(图片)
      * 重定向:设置302,设置Location!其中变化的只有Location,所以java提供了一个快捷方法,完成重定向!
       > sendRedirect(String location)方法

  • 相关阅读:
    20000字干货笔记,一天搞定Mysql~【转】
    Linux操作系统概述及内核介绍
    如何在装有高版本NBU的主机上安装低版本的NBU?卸载8.0安装7.5记录
    vmware+kvm+vnc安装配置
    NBU异机恢复Oracle数据库,作业报错2850处理
    NetBackup 进程整理
    1、虚拟化实施流程、宿主机如何选型、如何进行性能测试
    灾难恢复的衡量指标RTO和RPO
    国内主要灾备厂商
    单例设计模式
  • 原文地址:https://www.cnblogs.com/danyuzhu11/p/6653402.html
Copyright © 2011-2022 走看看