ControllerAdvice实现SpringBoot中Controller层异常统一处理

本文介绍了如何在SpringBoot项目中使用@ControllerAdvice和@ExceptionHandler注解实现Controller层的异常统一处理,以隐藏详细异常信息,返回友好的错误提示。通过创建ControllerExceptionHandler类,捕获所有Exception,记录日志,并返回自定义的AjaxResult错误信息。
摘要由CSDN通过智能技术生成

由于controller层直接由页面调用,项目要求controller层统一处理异常信息,不能将异常信息展示需求:SpringBoot项目Controller层异常统一处理,将异常信息屏蔽,给用户展示友好的出错信息。

方法:SpringBoot项目中可以使用ControllerAdvice和ExceptionHadler来统一处理Controller层异常。

定义一个类,并用@ControllerAdvice注解,然后定义统一处理异常的方法并用@ExceptionHandler注解。ExceptionHandler中的value是要统一处理的异常类,这里使用的Exception类,也可以指定具体的Exception子类。

@ControllerAdvice
public class ControllerExceptionHandler {

    private static final Logger LOG = LoggerFactory.getLogger(ControllerExceptionHandler.class);

    @ExceptionHandler(value = Exception.class)
    @ResponseBody
    public AjaxResult validatorExceptionHandler(Exception e) {
        AjaxResult ajaxResult =new AjaxResult();
        LOG.error(e.getMessage());
        AjaxResult.error("请求错误","");
        return ajaxResult;
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mraliang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值