springmvc利用jqueryupload上传文件,后台处理方法
2015-03-11 16:00
651 查看
public void importIdentifySchemeFile(Integer id,Integer type,HttpServletRequest request, HttpServletResponse response){
PrintWriter out = null;
try {
//初始化变量
InputStream stream = null;
String ret_fileName = null;//返回给前端已修改的文件名称
Map<String, Object> result = new HashMap<String, Object>();
SkillIdentifyFile skillIdentifyFile = new SkillIdentifyFile();
String fileSrc;
String fileName;
File uploadedFile = null;
try {
//设置字符集
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
out = response.getWriter();
if(id==null){
result.put("message", "方案不存在,不能上传");
out.print(new JSONObject(result).toString());
return;
}
//获取文件流
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
MultipartFile multipartFile = null;
for (Map.Entry<String, MultipartFile> set : fileMap.entrySet()) {
multipartFile = set.getValue();//文件名
}
stream = multipartFile.getInputStream();
//初始化文件名,并定义上传文件
UUID uuid = UUID.randomUUID();
fileName = multipartFile.getOriginalFilename();//原始文件名
String suffix = fileName.substring(fileName.indexOf(".") + 1);
ret_fileName = uuid.toString() + "." + suffix;
// 文件保存目录路径
String savePath = FileSystemConfig.getFileRootPath() + FILE_PATH;
// 创建文件夹
File dirFile = new File(savePath);
if (!dirFile.exists()) {
dirFile.mkdirs();
}
fileSrc = savePath + File.separator + ret_fileName;
uploadedFile = new File(fileSrc);
FileUtils.saveFile(uploadedFile, stream);
} catch (Exception e) {
//读写错误异常处理
result.put("message", e.getMessage());
out.print(new JSONObject(result).toString());
return;
} finally {
//资源关闭异常处理
try {
if (stream != null) {
stream.close();
}
} catch (Exception e) {
result.put("message", e.getMessage());
out.print(new JSONObject(result).toString());
return;
}
}
//初始化方案附件属性
skillIdentifyFile.setFile(FILE_PATH + ret_fileName);//下载路径
skillIdentifyFile.setName(fileName);//原始文件名
skillIdentifyFile.setUpdateTime(new Date(System.currentTimeMillis()));
skillIdentifyFile.setSkillidentifyId(id);
skillIdentifyFile.setType(type);
//保存当前附件到数据库
skillIdentifyService.addSkillIdentifyFile(skillIdentifyFile);
result.put("message", File_SUCCESS);
result.put("fileName", fileName);
out.print(new JSONObject(result).toString());
} finally {
//将信息返回
if (out != null) {
out.flush();
out.close();
}
}
}
PrintWriter out = null;
try {
//初始化变量
InputStream stream = null;
String ret_fileName = null;//返回给前端已修改的文件名称
Map<String, Object> result = new HashMap<String, Object>();
SkillIdentifyFile skillIdentifyFile = new SkillIdentifyFile();
String fileSrc;
String fileName;
File uploadedFile = null;
try {
//设置字符集
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
out = response.getWriter();
if(id==null){
result.put("message", "方案不存在,不能上传");
out.print(new JSONObject(result).toString());
return;
}
//获取文件流
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
MultipartFile multipartFile = null;
for (Map.Entry<String, MultipartFile> set : fileMap.entrySet()) {
multipartFile = set.getValue();//文件名
}
stream = multipartFile.getInputStream();
//初始化文件名,并定义上传文件
UUID uuid = UUID.randomUUID();
fileName = multipartFile.getOriginalFilename();//原始文件名
String suffix = fileName.substring(fileName.indexOf(".") + 1);
ret_fileName = uuid.toString() + "." + suffix;
// 文件保存目录路径
String savePath = FileSystemConfig.getFileRootPath() + FILE_PATH;
// 创建文件夹
File dirFile = new File(savePath);
if (!dirFile.exists()) {
dirFile.mkdirs();
}
fileSrc = savePath + File.separator + ret_fileName;
uploadedFile = new File(fileSrc);
FileUtils.saveFile(uploadedFile, stream);
} catch (Exception e) {
//读写错误异常处理
result.put("message", e.getMessage());
out.print(new JSONObject(result).toString());
return;
} finally {
//资源关闭异常处理
try {
if (stream != null) {
stream.close();
}
} catch (Exception e) {
result.put("message", e.getMessage());
out.print(new JSONObject(result).toString());
return;
}
}
//初始化方案附件属性
skillIdentifyFile.setFile(FILE_PATH + ret_fileName);//下载路径
skillIdentifyFile.setName(fileName);//原始文件名
skillIdentifyFile.setUpdateTime(new Date(System.currentTimeMillis()));
skillIdentifyFile.setSkillidentifyId(id);
skillIdentifyFile.setType(type);
//保存当前附件到数据库
skillIdentifyService.addSkillIdentifyFile(skillIdentifyFile);
result.put("message", File_SUCCESS);
result.put("fileName", fileName);
out.print(new JSONObject(result).toString());
} finally {
//将信息返回
if (out != null) {
out.flush();
out.close();
}
}
}
相关文章推荐
- struts利用插件jqueryupload上传文件,后台处理文件代码
- springmvc excel导入方法(jquery的ajaxfileupload上传excel文件)
- jquery.fileupload.js插件使用--后台处理单个上传文件类
- 利用SpringMVC框架提供的方法,做文件上传和下载操作
- 关于SpringMVC上传文件时后台处理
- jquery ajaxFileUpload.js插件支持多文件上传的方法
- JQuery按照form上传文件+asp.net后台处理(一)
- 文件上传ajaxFileUpload.js使用方法 包含后台接收方法
- asp.net利用Ajax和Jquery在前台向后台传参数并返回值,通过aspx.cs中的静态方法+WebMethod进行处理
- 利用javascript/jquery对上传文件格式过滤的方法
- 详解jQuery uploadify文件上传插件的使用方法
- jquery uploadify上传文件插件导致浏览器崩溃问题解决方法
- springMVC利用jquery-form.js异步提交表单(上传文件)
- jquery uploadify上传文件插件导致浏览器崩溃问题解决方法
- JQuery按照form上传文件+asp.net后台处理(二)
- 利用jQuery-file-upload在MVC中实现上传文件(未完成)
- 利用javascript/jquery对上传文件格式过滤的方法
- Springmvc 利用apache.commons.fileupload上传文件
- express后台接收文件以及jquery前端上传文件的方法
- springmvc利用jquery.form插件异步上传文件