/** * 上传文件 * * @param request * @param response * @throws IOException */ @RequestMapping("upload") public void uploadFile(HttpServletRequest request, HttpServletResponse response) throws IOException { Map<String, Object> map = new HashMap<String, Object>(); if (!(request instanceof DefaultMultipartHttpServletRequest)) { return; } DefaultMultipartHttpServletRequest re = (DefaultMultipartHttpServletRequest) request; Map<String, MultipartFile> fileMaps = re.getFileMap(); Collection<MultipartFile> files = fileMaps.values(); List<String> fileIds = new ArrayList<String>(); for (MultipartFile myfile : files) { if (myfile.isEmpty()) { System.err.println("文件未上传"); } else { String originalName = myfile.getOriginalFilename(); String extName = FileUtil.getFileExtName(originalName); String filePath = storageClientService.uploadFile( null, new ByteArrayInputStream(myfile.getBytes()), myfile.getBytes().length, extName.toUpperCase()); SxjLogger.info("siteUploadFilePath=" + filePath, this.getClass()); fileIds.add(filePath); // 上传元数据 NameValuePair[] metaList = new NameValuePair[1]; metaList[0] = new NameValuePair("originalName", originalName); storageClientService.overwriteMetadata(filePath, metaList); } } map.put("fileIds", fileIds); String res = JsonMapper.nonDefaultMapper().toJson(map); response.setContentType("text/plain;UTF-8"); PrintWriter out = response.getWriter(); out.print(res); out.flush(); out.close(); }