MultipartFile上传多个文件

j.jsp页面:

    

action="upload" enctype="multipart/form-data">  

Controller:

@RequestMapping(value = "/upload", method = RequestMethod.POST)
public String upload(HttpServletRequest request,
@RequestParam(value="taskid") int taskid,  //参数名与页面中的name相同
@RequestParam(value = "uploadfile", required = false) MultipartFile[] uploadfile)
{
String currentID=(String) request.getSession().getAttribute("id");
String road=Config.task+taskid+"/"+currentID;
UploadUtils up = new UploadUtils();
if(up.uploadUtils(uploadfile, road))
{
//获得当前用户id
System.out.println("$$$$$"+taskid);
//根据作业ID,和用户ID。修改result表中的submit状态
Result result = new Result();
result.setStuId(currentID);
result.setTaskId(taskid);
result.setSubmit(true);
try {
resultService.updateResult(result);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return"redirect:/joblist";  //返回作业列表

}


工具类中的函数:

//上传,road是文件存放路径

public boolean uploadUtils(MultipartFile[] uploadfile,String road)
{
if(uploadfile!=null && uploadfile.length > 0) 
{
for(MultipartFile file:uploadfile)
{

//设置上传文件位置
        String uploadpath = file.getOriginalFilename();  //获取文件名
        System.out.println("hahahah"+uploadpath);  
               //创建文件夹
           File uploadtargetFile = new File(road,uploadpath);
//判断文件是否存在
           isExists(uploadtargetFile);
//保存文件
if (saveFile(file, uploadtargetFile)) 
{
return true;
}
else
{
return false;
}
   
}

}
return false;
}

//判断该路径下文件是否存在
private boolean isExists(File uploadtargetFile)
{
if (!uploadtargetFile.exists())
   {
    uploadtargetFile.mkdirs(); 
    return true;
}
   else{
    System.out.println("文件已存在");
    return false;
   }
}

//保存文件
private boolean saveFile(MultipartFile file, File uploadtargetFile)
{  
       // 判断文件是否为空  
       if (!file.isEmpty()) {  
           try {  
           file.transferTo(uploadtargetFile);  //写入文件
               return true;  
           } catch (Exception e) {  
               e.printStackTrace();  
           }  
       }  
       return false;  
   }

你可能感兴趣的:(工具类)