• Servlet-response参数


    response参数

    javax.servlet.http.HttpServletResponse

    response是代表HTTP响应信息的对象。response一般用来把数据响应给浏览器

    常用方法

    返回值 方法 说明
    void setCharacterEncoding(String encoding) 设置字符编码类型为encoding
    PrintWriter getWriter() 返回一个输出字符流
    int getCharacterEncoding() 取得字符编码类型
    void sendRedirect() 重定向客户的请求到指定页面
    void addCookie(Cookie cookie) 给客户端添加一个Cookie对象,以保存客户端的信息
    void addDateHeader(String name,long value) 添加一个日期类型的HTTP首部信息,覆盖同名的HTTP首部
    void addIntHeader(String name,int value) 添加一个整型的HTTP首部,并覆盖旧的HTTP首部
    String encodeRedirectURL(String url) 对使用的URL进行编译
    String encodeURL(String url) 封装URL并返回到客户端,实现URL重写
    void flushBuffer() 清空缓冲区
    String getContentType() 取得MIME类型
    ServletOutputStream getOutputStream() 返回一个二进制输出字节流
    void reset() 重设response对象
    void resetBuffer() 重设缓冲区
    void sendError(int sc) 向客户端发送HTTP状态码的出错信息
    void setBufferSize(int size) 设置缓冲区的大小为size
    void setContentLength(int length) 设置响应数据的大小为size
    void setContentType(String type) 设置MIME类型
    void setDateHeader(String s1,long l) 设置日期类型的HTPP首部信息
    void setLocale(Locale locale) 设置本地化为locale
    void setStatus(int status) 设置状态码为status(200, 500, 404等)

    由于服务器在通过response获取的流发送数据时,默认使用iso8859-1编码,而这个编码中没有中文字符,所以在通过response获取的流发送中文数据时,会出现乱码问题。

    解决方法: response.setContentType("text/html;charset=utf-8");

    重定向

    当浏览器向服务器发请求访问某一个资源A,资源A在响应时通知浏览器需要再进一步请求才能获取到对应的资源,浏览器再次发请求访问服务器中的资源B,最终由资源B响应浏览器要获取的资源,这个过程叫做重定向。

    重定向代码

    response.sendRedirect(所重定向到资源的URL地址);

    重定向图解

    重定向特点

    1. 重定向是两次请求、两次响应
    2. 重定向前后,浏览器的地址栏地址会发生变化。(因为两次请求都是通过浏览器发起,浏览器知道这个跳转的过程,因此地址栏地址会变化)
    3. 重定向前后的request对象不是同一个(因为重定向是两次请求,服务器会根据两次请求创建两个不同的request对象,request对象不是同一个,也就不能在重定向时通过request带数据到目的地。)
    4. 重定向前后的两个资源可以是来自不同的web应用,甚至可以是来自不同的服务器。(进行跳转的两个资源之间没有限制)
  • 相关阅读:
    【2021年度总结】创业摸索探索
    Gitea 企业搭建私有git服务器
    聊聊公司的技术栈
    ELK 之解析域名的TLD
    CSS实现关键帧动画图标效果
    AutoEncoding Scene Graphs for Image Captioning 论文笔记
    会议室919、920、1897
    org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe问题探究
    Search in Rotated Sorted Array 循环有序数组查找问题
    因死循环导致CPU飙升到100%的问题排查记录
  • 原文地址:https://www.cnblogs.com/zpKang/p/13099749.html
Copyright © 2020-2023  润新知