开始
之前我们上传的图片格式都不大
当前如果我们上传一张500k的图片
yml内找到spring的节点
最大文件大小和最大请求文件的大小
servlet:
multipart:
max-file-size: 512000 #文件上传大小限制为500kb
max-request-size: 512000 #请求大小限制为500kb
重启服务器测试
前端没有什么提示,后端控制台报错了。
捕获异常
新创建一个包
创建自定义的异常助手类
package com.imooc.exception;
import com.imooc.utils.IMOOCJSONResult;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import org.springframework.web.multipart.MaxUploadSizeExceededException;
@RestControllerAdvice
public class CutomExceptionHandler {
public IMOOCJSONResult handleMaxUploadFile(MaxUploadSizeExceededException exception) {
return IMOOCJSONResult.errorMsg("上传文件大小不能超过500k,请压缩图片或者降低图片质量再上传!");
}
}
最后加上注解
把要捕获的异常类放进去
@RestControllerAdvice
public class CutomExceptionHandler {
@ExceptionHandler(MaxUploadSizeExceededException.class)
public IMOOCJSONResult handleMaxUploadFile(MaxUploadSizeExceededException exception) {
return IMOOCJSONResult.errorMsg("上传文件大小不能超过500k,请压缩图片或者降低图片质量再上传!");
}
}
@RestControllerAdvice
public class CutomExceptionHandler {
// 上传文件超过500k,捕获异常 MaxUploadSizeExceededException
@ExceptionHandler(MaxUploadSizeExceededException.class)
public IMOOCJSONResult handleMaxUploadFile(MaxUploadSizeExceededException exception) {
return IMOOCJSONResult.errorMsg("上传文件大小不能超过500k,请压缩图片或者降低图片质量再上传!");
}
}
测试
测试的时候记得,刷新下前台页面 再来测试。我遇到了缓存的问题,刷新下前台就可以了