最简单的方法就是把文件链接写到a标签的href里,但是有人说了,这样会暴露服务器的文件路径,有风险- -
下面整理介绍几种通过代码实现的方法:
1,
@RequestMapping("download")
public ResponseEntity<byte[]> download(HttpServletRequest request) throws Exception {
String fileName = request.getParameter("fileName");
String path = request.getSession().getServletContext().getRealPath("")+File.separator+"WEB-INF"+File.separator+"download";
File file = new File(path,fileName);
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
headers.setContentDispositionFormData("attachment", fileName);
return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),headers, HttpSta