ajax文件上传(前后端)

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);
}
    
    
原文地址:https://www.cnblogs.com/666boyun/p/15070565.html