java的代码

@RequestMapping("/admin/fileUpload")
	public String fileUpload(HttpServletRequest request,@RequestParam("file") CommonsMultipartFile file){	
		String originalFilename = file.getOriginalFilename();	
		try {
			//原文件名后缀
			String fileEnd = FilenameUtils.getExtension(originalFilename);
			//新文件名以uuid为名
			System.out.println(fileEnd);
			String fileUUID = UUID.randomUUID().toString();
			System.out.println(fileUUID);
			String serverPath = "D://home//";
			File dirs=new File(serverPath);
			if(!dirs.exists()){//判断文件夹是否存在 
				System.out.println("文件夹不存在,进行创建。");
				dirs.mkdirs();//不存在就创建
			}
			BufferedInputStream in = new BufferedInputStream(file.getInputStream());
			//字节流转图片对象
			Image bi =ImageIO.read(in);
			System.out.println(bi);
			//500 后面按比例 bi.getHeight(null)*500/bi.getWidth(null)
			BufferedImage tag = new BufferedImage(500,bi.getHeight(null)*500/bi.getWidth(null), BufferedImage.TYPE_INT_RGB);
			//绘制改变尺寸后的图
			tag.getGraphics().drawImage(bi, 0, 0, 500, bi.getHeight(null)*500/bi.getWidth(null), null);  //
			//输出流
			BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(serverPath+fileUUID+"."+fileEnd));
			System.out.println(out.toString());
			ImageIO.write(tag,fileEnd,out);
			System.out.println(ImageIO.write(tag,fileEnd,out));
			in.close();
			out.close();	
		} catch (Exception e) {
			e.printStackTrace();	
		}
		return "redirect:/file/showUpload";
	}

导入架包

jsp页面

<form action="${pageContext.request.contextPath }/file/admin/fileUpload" method="post" enctype="multipart/form-data">
    	文件:<input type="file" name="file"/><br/>
    	    <input type="submit" value="提交" />
    </form>
    

原图片尺寸

修改过后的图片,宽度固定500,高度按照比例缩放