Servlet-Response响应字节数据

Servlet-Response响应字节数据

使用:

  1. 通过Resonse对象获取字节输出流
    • ServletOutputStream outputStream = resp.getOutputStream();
  2. 写数据
    • outputStream.write(字节数据);

可以通过apache的commons-io工具类实现

  1. 导入坐标
  2. 使用
    - IOUtils.copy(输入流, 输出流);
<dependency>
  <groupId>commons-io</groupId>
  <artifactId>commons-io</artifactId>
  <version>2.5</version>
</dependency>
@Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 1.读取文件
        FileInputStream fis = new FileInputStream("D://b.png");

        // 2. 获取response字节输出流
        ServletOutputStream os = resp.getOutputStream();

        // 3. 完成流的copy
        /*byte[] buff = new byte[1024];
        int len = 0;
        while ((len = fis.read(buff)) != -1){
            os.write(buff, 0, len);
        }*/
        // apache提供的工具类实现字节数据的拷贝,需要在pom.xml添加commons-io坐标
        IOUtils.copy(fis, os);

        fis.close();
    }