唯爱Spring BootJVM · Java虚拟机原理 · JVM上语言·框架· 生态系统

SpringBoot SpringMVC实现文件下载

2017-08-24  本文已影响727人  光剑书架上的书

SpringBoot SpringMVC实现文件下载

   @RequestMapping(value = "/download", method = RequestMethod.GET)
    ResponseEntity<InputStreamResource> downloadFile(String log)
            throws IOException {
        String filePath = "/Users/alilang/logs/" + log
        FileSystemResource file = new FileSystemResource(filePath)
        HttpHeaders headers = new HttpHeaders()
        headers.add("Cache-Control", "no-cache, no-store, must-revalidate");
        headers.add("Content-Disposition", String.format("attachment; filename=\"%s\"", file.getFilename()))
        headers.add("Pragma", "no-cache")
        headers.add("Expires", "0")

        return ResponseEntity
                .ok()
                .headers(headers)
                .contentLength(file.contentLength())
                .contentType(MediaType.parseMediaType("application/octet-stream"))
                .body(new InputStreamResource(file.getInputStream()))
    }
上一篇下一篇

猜你喜欢

热点阅读