文件上传:
@RequestMapping("uploadFile")
private void uploadFile(@RequestParam("file")MultipartFile uploadfile, HttpServletRequest request
) throws IOException {
String originalFilename = uploadfile.getOriginalFilename();
String realPath = request.getSession().getServletContext().getRealPath("/fj");
File file = new File(realPath);
if(!file.exists()){
file.mkdirs();
}
File file2 = new File(file,originalFilename);
uploadfile.transferTo(file2);
}
文件下载:
@RequestMapping(value = "downFile", method = RequestMethod.POST)
public void downloadFile(HttpServletRequest request,HttpServletResponse response) {
String filename=request.getParameter("filename");//所需下载的文件名
String xzfilePath=request.getParameter("filepath");//文件所在地址
try {
// path是指欲下载的文件的路径。
File file = new File(xzfilePath);
// 以流的形式下载文件。
InputStream fis = new BufferedInputStream(new FileInputStream(xzfilePath));
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
// 清空response
response.reset();
response.setHeader("Content-Disposition", "attachment;filename=" + new String(filename.getBytes(),"ISO8859-1"));
response.setHeader("Content-Length", "" + file.length());
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}