ssm java上传图片预览_ssm文件上传_上传图片
1、搭建好ssm框架
2、導入文件上傳所需依賴
commons-fileupload
commons-fileupload
1.4
commons-io
commons-io
2.6
commons-lang
commons-lang
2.6
3、springmvc的xml文件中配置文件所需的類
4、jsp界面
對應
其次第二個文件上傳對應的就是第二個div里面的內容
4、form表單配置
注意:
表單中method必須為post方法不然會報405錯誤
必須加入enctype屬性這樣此表單才支持文件上傳
5、controller層(邏輯和代碼如下有注釋):
@RequestMapping("addUser")publicString addUser(
User user,
HttpSession session,
Model model,
@RequestParam(value="multipartFiles") MultipartFile[] multipartFiles){//如果有文件上傳
if(multipartFiles.length>0){for(int i=0;i
String path=session.getServletContext().getRealPath("statics"+ File.separator+"uploadfiles");//原文件名
String oldName=multipartFiles[i].getOriginalFilename();//獲取原文件的后綴(可以過濾一些文件)
String suffix=FilenameUtils.getExtension(oldName);//文件上上傳大小 得小于 500 kb
int fileSize=1024*500;//如果當前文件的大小大于500kb
if((multipartFiles[i].getSize())>fileSize){
model.addAttribute("error","文件的大小大于500kb");return "redirect:jsp/user/forwardTo?url=userAdd";
}//后綴判斷
if("jpg".equals(suffix)||"jpeg".equals(suffix)||"png".equals(suffix)||"pneg".equals(suffix)){//新拼接的文件名 原文件名+當前系統時間+隨機數+"_Personal.jpg"
String fileName=oldName+System.currentTimeMillis()+ RandomUtils.nextInt(1000000)+"_Personal.jpg";
File targetFile=newFile(path,fileName);//如果該目錄不存在
if(!targetFile.exists()){//遞歸創建該目錄
targetFile.mkdirs();
}try{//文件上傳
multipartFiles[i].transferTo(targetFile);if(i==0){
user.setIdPicPath(fileName);
}else if(i==1){
user.setWorkPicPath(fileName);
}
}catch(IOException e) {
e.printStackTrace();
model.addAttribute("error","文件上傳失敗");return "redirect:jsp/user/forwardTo?url=userAdd";
}
}else{
model.addAttribute("error","圖片格式不違法");return "redirect:jsp/user/forwardTo?url=userAdd";
}
}
}
}//未攜帶文件上傳://獲取當前用戶
User userSession =(User) session.getAttribute(Contents.USER_SESSION);//設置創建者 和 創建時間的值
user.setCreatedBy(userSession.getId());
user.setCreationDate(newDate());//添加用戶成功跳用戶列表否則還是在用戶添加頁面
return userService.insertUser(user)?"redirect:/jsp/user/forwardTo?url=home":"redirect:/jsp/user/forwardTo?url=userAdd";
}
總結
以上是生活随笔為你收集整理的ssm java上传图片预览_ssm文件上传_上传图片的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html调用父页面的函数,javascr
- 下一篇: 计算机网络中的物理层