image_utils
1.调用checknull函数
function checkEmpty(value,text){
if(null==value || value.length==0){
alert(text+ "不能为空");
return false;
}
return true;
}
2.将某个本地文件获取并保存在file
getFile:function(event){
this.file=event.target.files[0];
}
3.图片的上传采用Ajax上传,点击触发函数--add()
function add(){
//判断是否为空
if(!checkEmpty(this.file,"分类图片")) return;
var url=this.url;
//采用ajax上传
var formData=new FormData();
formData.append("image",this.file);
ajax.post(){
url:url,
}
}
4.采用imageutil
public class ImageUtil{
public static BufferedImage changeToJpg(File f){
try{
IMage i=Toolkit.getDefaultToolkit().createImage(f.getAbsolutePath());
PixelGrabber pg=new PixeGrrabber(i,0,0,-1,-1,true);
pg.grabPixels();
//获取长宽
int width=pg.getWidth,height=pg.hetHeight();
//
final int[] RGB_MASKS={0xFF0000, 0xFF00, 0xFF};
final ColorModel RGB_OPAQUE=new DirectColorModel(32,RGB_MASKS[0],RGB_MASKS[1]RGB_MASKS[2]);
DataBuffer buffer=new DataBuffer((int[]) pg.getPixels(),pg.getWidth()*pg.getHeight());
WritableRaster raster=Raster.createPackedRaster(buffer,width,height,width,RGB_MASKS,null);
BufferedImage img=new BufferedInage(RGB_OPAUE,raster,false,null);
return img;
}catch(INterruptedException e){
e.printStackTrace();
return null;
}
}
public static void resizeImage(File srcFile,int width,int height,File destFile){
}
}
5.controller层的调用
@PostMapping("/uploadImg")
public Object add(Bean bean,MultipartFile imge,HttpServletRequest request)throws Exception{
saveOrUpdateImageFile(bean,image,request);
return bean;
}
//核心代码
public void saveUpdateImageFile(Bean bean,MultipartFile img,HttpServletRequest request)throws IOException{
File imgFolder=new File(request.getServletContext().getRealPath("img/image"));
File file=new File(imageFolder,bean.getId()+".jpg");
if(!file.getParentFile().exists()){
file.getParentFile().mkdirs();
}
image.transferTO(file);
BufferedImage img ImageUtil.changeToJpg(file);
ImageIo.write(img,"jpg",file);
}