java web之路 springMVC上传图片

jar包

commons-fileupload-xxx.jar

commons-io-xxx.jar

spring.xml配置

 


	
		5242880
	

java web之路 springMVC上传图片_第1张图片

文件服务器

没有设置专用的文件服务器,与程序共用tomcat服务器,在tomcat中设置

java web之路 springMVC上传图片_第2张图片

前端代码

提交的表单中增加属性

后端代码

controller中添加参数MultipartFile item_pic

@RequestMapping(value="editItemsSubmit",method=RequestMethod.POST)
	public String editItemsSubmit(HttpServletRequest request,HttpServletResponse response ,String createtime, Integer id, 
			@Validated ItemsCustom itemsCustom,BindingResult bindingResult, MultipartFile item_pic, Model model) throws Exception {
		
		if(bindingResult.hasErrors()) {
			List errorlist = bindingResult.getAllErrors();
			for (ObjectError objectError : errorlist) {
				System.out.println(objectError.getDefaultMessage());
				
			}
			
			model.addAttribute("errorlist",errorlist );
			return "items/editItems";
		}
		
//		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//		
//		itemsCustom.setCreatetime(sdf.parse(createtime));
		
		//获得图片的原始名称
		String originalFilename = item_pic.getOriginalFilename();
		
		//upload pic
		if(item_pic != null && originalFilename!=null && originalFilename.length()>0) {
			//存放图片的物理路径
			String file_path="C:/workspace/java/pic/";

			//图片的新名称
			 String pic_name = UUID.randomUUID() + originalFilename.substring(originalFilename.indexOf("."));
			//新图片
			File newfile = new File(file_path + pic_name);
			//将图片写入磁盘
			item_pic.transferTo(newfile);
			
			
			itemsCustom.setPic(pic_name);
			
		}
		
		
		
		itemsService.updateItems(id, itemsCustom);
		
		return "success";
		
		
	}

 

你可能感兴趣的:(java-web,自学之路)