java_day22_servlet重定向,字节流传输

Servlet基础

一.重定向

  1.方法一:

    resp.setStatus(302);//添加响应码302,请求重定向

    resp.addHeader("location","/path");//参数/path是相对路径,也可以为具体url

  2.方法二:

    resp.sendRedirect("/path");//快捷的重定向方法

  3.自动重定向(刷新)

    resp.addHeader("content-Type","text/html;charset=utf-8");//设置内容类型

    resp.setHeader("Refresh","5;URL=/index.jsp");//设置请求头,5秒后跳转到的页面

    resp.getWriter().println("<a href = "/index.jsp">"+"5秒后跳转</a>");

二.servlet字节流,引用commons的jar包

  1.网页加载图片代码: 在一个servlet中字节流和字符流只能二选一

      OutputStream os = resp.getOutputStream();//获得字节输出流

      InputStream is = getServletContext().getResourceAsStream("pic/1.jpg");//获得输入流

      byte[] bytes = IOUtils.toByteArray(is);//读取输出流里的内容,生成一个byte数组

      os.write(bytes);//向浏览器写流

  2.网页提供下载

      resp.setCharacterEncoding("utf8");//设置响应的编码格式为utf8

      resp.setHeader("Content-Disposition","attachment;filename=aa.mp3");//设置响应头信息

      InputStream is = getServletContext().getResourceAsStream("file/少年八荒.mp3");//获取输入流

      resp.getOutputStream().write(IOUtils.toByteArry(is));//向浏览器写流      

            

原文地址:https://www.cnblogs.com/memo-song/p/9021696.html