Java spring实现文件下载


一,实现目的,后台写一个controller,然后前台页面点击文件下载,实现文件下载功能。(文件是存放于服务器的磁盘上的)

@RequestMapping("/filesdownloads")
        public ResponseEntity<byte[]> EIToolDownloads(HttpServletRequest request,HttpServletResponse response) throws IOException{
     String doenLoadPath = "xxx";  // doenLoadPath是文件路径(一般指服务器上的磁盘位置)
        File file = new File(doenLoadPath);
        if(file.exists()){
                HttpHeaders headers = new HttpHeaders();
                headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
                headers.setContentDispositionFormData("attachment", file.getName());
                return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers,HttpStatus.OK);
            }else{
                System.out.println("文件不存在,请重试...");
                return null;
            }
        }

二,前台只需要一个a标签即可:

HTML代码:
<a href="/filesdownloads" >下载</a>

 三,前台也可以通过点击button触发下载功能

//js代码
function download(){
               self.location.href("/filesdownloads");
              
        }


//html代码
<button onclick="download()"></button>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM