springMVC实现文件上传 删除 下载
2017-06-01 12:18
603 查看
// 附件上传 @RequestMapping(value = "/uploadfile", method = RequestMethod.POST) @ResponseBody public Object uploadTest(@RequestParam(required = false, value = "file") MultipartFile file, @RequestParam(required = false, value = "expoid") String expoid, HttpServletRequest request, HttpServletResponse response) throws IOException { Map<String, Object> reMap = new HashMap<String, Object>(); User user = UserUtils.getUser(); String path = request.getSession().getServletContext().getRealPath("fujianTemplate"); String fileName = file.getOriginalFilename(); String newFileName = expoid + "_fujian.doc"; File targetFile = new File(path, newFileName); if (!targetFile.exists()) { targetFile.mkdirs(); } // 保存 try { file.transferTo(targetFile); Boolean bool = exhibitionpoService.saveUpload(user.getName(), newFileName, expoid); if(bool==true){ reMap.put("message", "文件信息保存成功!"); Exhibitionpo ex = exhibitionpoService.uploadAccessory(expoid); reMap.put("uploadName", ex.getUploadName()); reMap.put("urlName", ex.getUrlName()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String dateStr = sdf.format(ex.getUploadTime()); reMap.put("uploadTime", dateStr); reMap.put("mess", "附件上传上传成功!"); } else if (bool == false) { reMap.put("mess", "附件上传上传失败!"); } } catch (Exception e) { e.printStackTrace(); } return reMap; } // 文件删除 @ResponseBody @RequestMapping(value = "/delFujianFile", method = RequestMethod.POST) public Object delFujianFile(@RequestParam("expoid") String expoid, HttpServletResponse response, HttpServletRequest request) throws Exception { Map<String, Object> reMap = new HashMap<String, Object>(); // 文件路径 String path = request.getSession().getServletContext().getRealPath("fujianTemplate"); String newFileName = expoid + "_fujian.doc"; File targetFile = new File(path, newFileName); if (targetFile.exists()) { targetFile.delete(); Boolean bool = exhibitionpoService.deleteFile(expoid); if (bool == true) { reMap.put("mess", "附件删除成功!"); } else { reMap.put("mess", "附件删除失败!"); } } else { reMap.put("mess", "附件不存在!"); } return reMap; } // 文件下载 @ResponseBody @RequestMapping(value = "/downFujianFile", method = RequestMethod.GET) public ModelAndView downFujianFile(@RequestParam("expoid") String expoid, HttpServletResponse response, HttpServletRequest request) throws Exception { String fileName = expoid + "_fujian.doc"; String filePath = request.getSession().getServletContext().getRealPath("fujianTemplate") + "\\" + fileName; File file = new File(filePath); // 清空response response.reset(); response.setHeader("Content-Disposition", "attachment; filename=\"" + new String(fileName.getBytes("utf-8"), "iso-8859-1") + "\""); response.addHeader("Content-Length", "" + file.length()); response.setContentType("application/octet-stream;charset=UTF-8"); InputStream in = null; OutputStream toClient = null; try { // 以流的形式下载文件 in = new BufferedInputStream(new FileInputStream(filePath)); byte[] buffer = new byte[in.available()]; in.read(buffer); in.close(); toClient = new BufferedOutputStream(response.getOutputStream()); toClient.write(buffer); toClient.flush(); } catch (Exception e) { e.printStackTrace(); } finally { toClient.close(); } return null; } public static Properties proper = null; private String readProperties(String key) { if (this.proper == null) { InputStream in = this.getClass().getResourceAsStream("/env.properties"); try { this.proper = new Properties(); this.proper.load(in); } catch (IOException e) { e.printStackTrace(); } } return this.proper.getProperty(key); }
相关文章推荐
- C#实现Ftp各种操作(上传,下载,删除文件,创建目录,删除目录,获得文件列表)
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- java操作FTP,实现文件上传下载删除操作
- 调用hadoop api实现文件的上传、下载、删除、创建目录和显示功能
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- php下连接ftp实现文件的上传、下载、删除文件实例代码
- JSP/servlet实现文件上传下载和删除
- 实现 ftp 文件/文件夹的上传下载以及删除
- Java实现远程HDFS的文件操作(新建、上传、下载、删除)
- JSP/servlet实现文件上传下载和删除
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- springmvc实现文件上传下载
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总1
- JAVA实现FTP服务器文件的上传,下载,删除功能
- Microsoft .NET Framework 2.0对文件传输协议(FTP)操作(上传,下载,新建,删除,FTP间传送文件等)实现汇总
- SpringMVC下Excel文件的上传下载实现
- Java实现FTP服务器的上传、下载、删除、查看文件列表
- Java实现ftp上传下载、删除文件及在ftp服务器上传文件夹的方法