SpringBoot+MybatisPlus--文件下载及实例

文件下载方式

  •   通过游览器以附件的形式下载
  •   直接在游览器中打开

本质是服务器将文件以流的方式写回游览器。

    @GetMapping("/download")
    public void download(String name, HttpServletResponse response) {
        try {
            // 从本地磁盘进行读取
            FileInputStream fileInputStream = new FileInputStream(new File(basePath + name));
            // 从response中获取输出流对象
            ServletOutputStream outputStream = response.getOutputStream();
            response.setContentType("image/jpeg");
            // 进行读取
            int len = 0;
            byte[] bytes = new byte[1024];
            // 当bytes没有数据的时候 返回-1
            while((len = fileInputStream.read(bytes)) != -1) {
                outputStream.write(bytes, 0, len);
                outputStream.flush();
            }
            outputStream.close();
            fileInputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

 

posted @ 2022-10-19 22:34  信2005-2赵磊  阅读(217)  评论(0)    收藏  举报