response的响应头相关方法

响应头: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)方法

posted @ 2017-03-31 22:49  贱贱的小帅哥  阅读(405)  评论(0编辑  收藏  举报