使用ResponseEntity
返回响应的文件流,实现文件下载
@RequestMapping("/download")
public ResponseEntity<byte[]> download(HttpServletRequest request) throws IOException {
//1、得到要下载的文件的流
//找到要下载的文件的真是路径
ServletContext servletContext = request.getServletContext();
String realPath = servletContext.getRealPath("/scripts/jquery-1.9.1.min.js");
FileInputStream fileInputStream = new FileInputStream(realPath);
byte[] tmp = new byte[fileInputStream.available()];
fileInputStream.read(tmp);
fileInputStream.close();
//2、将要下载的文件流返回
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.set("Content-Disposition","attachment;filename=" + "jq-1.9.1.min.js");
return new ResponseEntity<byte[]>(tmp,httpHeaders,HttpStatus.OK);
}
响应结果: