zoukankan      html  css  js  c++  java
  • SpringBoot(三):文件下载

    SpringBoot(三):文件下载

    在原来的SpringBoot–uploadfile项目基础上添加文件下载的Controller:

     @RequestMapping(value = "/testDownload", method = RequestMethod.GET)
            public void Download(HttpServletResponse res) {
              String fileName = "1.png";
              res.setHeader("content-type", "application/octet-stream");
              res.setContentType("application/octet-stream");
              res.setHeader("Content-Disposition", "attachment;filename=" + fileName);
              byte[] buff = new byte[1024];
              BufferedInputStream bis = null;
              OutputStream os = null;
              try {
                os = res.getOutputStream();
                bis = new BufferedInputStream(new FileInputStream(new File("d://"
                    + fileName)));
                int i = bis.read(buff);
                while (i != -1) {
                  os.write(buff, 0, buff.length);
                  os.flush();
                  i = bis.read(buff);
                }
              } catch (IOException e) {
                e.printStackTrace();
              } finally {
                if (bis != null) {
                  try {
                    bis.close();
                  } catch (IOException e) {
                    e.printStackTrace();
                  }
                }
              }
              System.out.println("success");
            }

    需要下载的文件放在D盘。

     @RequestMapping(value = "/download", method = RequestMethod.GET)
         public String Download() {
             return "/fileDownload";
         }

    fileDownload.html:

    <html>
    <head>
    <meta charset="UTF-8"/>
    <title>文件下载示例</title>
    </head>
    <body>
        <h2>文件下载示例</h2>
        <hr/>
        <a href="/testDownload">下载</a>
    </body>
    </html>
    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_26641781/article/details/76572422
  • 相关阅读:
    OpenCV中 常用 函数 的作用
    OpenCV中Mat的使用
    awk --- 常用技巧
    Specify 的含义 ------ 转载
    关于CPU CACHE工作机制的学习
    关于CPU Cache -- 程序猿需要知道的那些事
    ARM920T的Cache
    Learn Git and GitHub
    朴素贝叶斯分类器(MNIST数据集)
    k-近邻算法(KNN)识别手写数字
  • 原文地址:https://www.cnblogs.com/hfultrastrong/p/9259696.html
Copyright © 2011-2022 走看看