java基础(六):springboot统一异常处理

eg:

@Slf4j
@ControllerAdvice
public class WebExceptionHandler {

    /**
     * 文件大小限制
     */
    @Value("${upload.file.size}")
    private String fileSize;

    /**
     *  web 统一异常处理
     * @param request
     * @param ex
     * @return
     */
    @ExceptionHandler(value = {Exception.class, Throwable.class})
    public @ResponseBody
    RespBody handleException(HttpServletRequest request, Throwable ex) {
        log.error(ex.getMessage(), ex);
        // 自定义异常类型
        if (ex instanceof BussinessException) {
            BussinessException be = (BussinessException) ex;
            return R.info(be.getRespCode(), be.getRespMsg());
        }
        // 上传文件大小异常
        if (ex instanceof MultipartException) {
            return R.info(ResultInfo.WEB_COMMON_FILASIZE_LIMIT_0003.getCode(),
                    ResultInfo.WEB_COMMON_FILASIZE_LIMIT_0003.getCacheMsg(fileSize));
        }
        // 通用错误类型
        return R.info(ResultInfo.WEB_SYS_ERROR);
    }

}

一:定义全局异常处理类
1、使用@ControllerAdvice定义统一的异常处理类,可以不用在每个Controller中逐个定义异常处理方式
2.@ExceptionHandler 用来定义函数针对的异常类型,controller通过抛出的异常类型匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值