java文件上传
2016-03-16 14:08
363 查看
@RequestMapping(value = "/addSubProject",method = RequestMethod.POST,produces=MediaType.APPLICATION_JSON_VALUE)
public ModelAndView addSubProject(@ModelAttribute("subProject") SubProject subProject,@RequestParam("file") MultipartFile[] files,HttpServletRequest request,HttpServletResponse response,@RequestParam("subPid") Long subPid){
try {
String path=null;
String fileName=null;
StringBuffer sb = new StringBuffer();
for (MultipartFile multipartFile : files) {
if (multipartFile == null || multipartFile.isEmpty()) {
continue;
}
//String rootPath = request.getServletContext().getRealPath("/");
//fileName = new String(multipartFile.getOriginalFilename().getBytes("ISO8859-1"), "UTF-8");
path = FileOperateUtil.UPLOADDIR_SUPPROJECT;
fileName = path+multipartFile.getOriginalFilename();
File targetFile = new File(path);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
byte[] bytes = multipartFile.getBytes();
BufferedOutputStream buffStream = new BufferedOutputStream(new FileOutputStream(fileName));
buffStream.write(bytes);
buffStream.close();
sb.append(fileName + ";");
}
if (subPid!=null) {
subProject.setPath(sb.toString());
subProjectService.updateSubProjectInfo(subProject,subPid);
}else{
subProject.setPath(sb.toString());
subProjectService.addSubProject(subProject);
}
} catch (BusinessServiceException e) {
logger.error(e.getMessage());
}catch (Exception e) {
logger.error(e.getMessage());
throw new RestException(HttpStatus.INTERNAL_SERVER_ERROR, e.getMessage());
}
//使用ModelAndView重定向到查询列表
//return new ModelAndView("redirect:/"+AppModule.SUBPROJECT_MANAGE_EN);
return new ModelAndView("redirect:/"+AppModule.ATTACHMENT_UPLOAD_EN);
}
public ModelAndView addSubProject(@ModelAttribute("subProject") SubProject subProject,@RequestParam("file") MultipartFile[] files,HttpServletRequest request,HttpServletResponse response,@RequestParam("subPid") Long subPid){
try {
String path=null;
String fileName=null;
StringBuffer sb = new StringBuffer();
for (MultipartFile multipartFile : files) {
if (multipartFile == null || multipartFile.isEmpty()) {
continue;
}
//String rootPath = request.getServletContext().getRealPath("/");
//fileName = new String(multipartFile.getOriginalFilename().getBytes("ISO8859-1"), "UTF-8");
path = FileOperateUtil.UPLOADDIR_SUPPROJECT;
fileName = path+multipartFile.getOriginalFilename();
File targetFile = new File(path);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
byte[] bytes = multipartFile.getBytes();
BufferedOutputStream buffStream = new BufferedOutputStream(new FileOutputStream(fileName));
buffStream.write(bytes);
buffStream.close();
sb.append(fileName + ";");
}
if (subPid!=null) {
subProject.setPath(sb.toString());
subProjectService.updateSubProjectInfo(subProject,subPid);
}else{
subProject.setPath(sb.toString());
subProjectService.addSubProject(subProject);
}
} catch (BusinessServiceException e) {
logger.error(e.getMessage());
}catch (Exception e) {
logger.error(e.getMessage());
throw new RestException(HttpStatus.INTERNAL_SERVER_ERROR, e.getMessage());
}
//使用ModelAndView重定向到查询列表
//return new ModelAndView("redirect:/"+AppModule.SUBPROJECT_MANAGE_EN);
return new ModelAndView("redirect:/"+AppModule.ATTACHMENT_UPLOAD_EN);
}
相关文章推荐
- Java方法的覆盖与隐藏的区别分析
- 请问 java中 ==和equals 的区别 ?
- Eclipse 添加快捷方式
- Java流
- [Java基础] 断言(assert)
- java 中 size() 和 length()
- spring4.1.6配置quartz2.2.1(maven) <转>
- 在PLSQL中编译复杂的java(转)
- Java_适配器模式
- 【Java80小白建站系列】3.阿里云服务器购买
- java程序为什么无须delete语句进行内存回收
- springMVC Controller 参数bean中Date类型属性的赋值问题
- java基础学习--(1) IO学习
- [jAudio] JAVA上经典特征提取工具
- Java垃圾收集学习笔记(转)
- Spring Boot 学习(一)
- 整理对Java项目的快捷插件
- [JAVA关键字] static & final
- JAVA_棱形(实心) + 蝴蝶结(实心)打印
- Java数组去重