您的位置:首页 > 编程语言 > Java开发

springmvc图片上传验证--基于图片后缀和宽高属性

2017-11-24 11:21 316 查看
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;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息