Response

一、Response

       * 功能:设置响应消息

           1. 设置响应行:  格式:HTTP/1.1 200 ok

                                    设置状态码:setStatus(int sc) 

            2. 设置响应头:setHeader(String name, String value) 

            3. 设置响应体:

                     1. 获取输出流:

                               * 字符输出流:PrintWriter getWriter()

                               * 字节输出流:ServletOutputStream getOutputStream()

                      2. 使用输出流,将数据输出到客户端浏览器

         * 重定向:资源跳转的方式               

//1. 设置状态码为302
            response.setStatus(302);
            //2.设置响应头location
            response.setHeader("location","/web/responseDemo2");


            //简单的重定向方法
            response.sendRedirect("/web/responseDemo2");

              * 重定向的特点:redirect:

                       1. 地址栏发生变化

                        2. 重定向可以访问其他站点(服务器)的资源

                        3. 重定向是两次请求。不能使用request对象来共享数据

 

         * 服务器输出字符数据到浏览器

              * 步骤: 1. 获取字符输出流;2. 输出数据

               * 注意:* 乱码问题:

                         1. PrintWriter pw = response.getWriter();获取的流的默认编码是ISO-8859-1

                          2. 设置该流的默认编码

                          3. 告诉浏览器响应体使用的编码           

response.setContentType("text/html;charset=UTF-8");
        PrintWriter writer= response.getWriter();
        writer.write("中国");

  二、ServletContext对象

        1. 概念:代表整个web应用,可以和程序的容器(服务器)来通信

         2. 获取:

                 通过request对象获取:request.getServletContext();

                 通过HttpServlet获取:this.getServletContext();

         3. 功能:

               *  获取MIME类型:在互联网通信过程中定义的一种文件数据类型

               * 域对象:共享数据

                   1. setAttribute(String name,Object value)

                   2. getAttribute(String name)

                   3. removeAttribute(String name)

                 ServletContext对象范围:整个Web应用。

                 生命周期:当Web应用被加载进容器时创建代表整个web应用的ServletContext对象,当服务器关闭或Web应用被移除时,ServletContext对象跟着销毁。

               * 获取文件的真实(服务器)路径

                      1. 方法:String getRealPath(String path)  

 

posted @ 2020-03-09 15:37  撑起一片阳光  阅读(290)  评论(0编辑  收藏  举报