public class ImgUploadCheck {
private static Logger logger = Logger.getLogger(ImgUploadCheck.class);
/**图片格式不符*/
private final static Integer ERROR_FORMAT = 1;
/**不是有效的图片*/
private final static Integer IMAGE_INVALID = 2;
/**上传成功*/
private final static Integer IS_OK = 0;
/**上传图片格式定义*/
private final static String IMAGE_TYPE = "jpg,gif,png,bmp,jpeg";
/**
* 对上传的图片文件作校验
* @param image
* @return 1:图片格式不符,2:无效的图片,0:上传成功
*/
public static Integer imageCheck(CommonsMultipartFile image) {
//1、图片后缀合法性判断
String fileName = image.getFileItem().getName();
String fileExt = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
if (!IMAGE_TYPE.contains(fileExt.trim().toLowerCase())) {
return ERROR_FORMAT;
}
//2、图片内容宽高属性判断
BufferedImage bufferedImage = null;
try {
bufferedImage = ImageIO.read(image.getInputStream());
if (bufferedImage == null || bufferedImage.getWidth() <= 0 || bufferedImage.getHeight() <= 0) {
return IMAGE_INVALID;
}
} catch (IOException e) {
logger.error("======图片解析错误!====="+e.getMessage());;
}
return IS_OK;
}
}
springmvc图片上传验证--基于图片后缀和宽高属性
最新推荐文章于 2022-10-24 11:28:23 发布