springboot定义统一的异常返回格式(全局,特定,自定义)等-创新互联

一 设置全局统一的返回格式 1.1 没有加全局异常处理

1.这里设置一个字符串为空指针异常,然后看看返回给前端的信息。

成都创新互联公司是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,微信平台小程序开发,10余年建站对PVC花箱等多个领域,拥有丰富的网站制作经验。

2.返回结果

3.效果看起来不友好的提示

1.2 添加全局异常处理

1.代码:添加一个全局异常处理类

@ControllerAdvice
public class GlobalExceptionHandler {

    //指定出现什么异常执行这个方法
    @ExceptionHandler(Exception.class)
    @ResponseBody //为了返回数据
    public R error(Exception e) {
        e.printStackTrace();
        return R.error().message("亲,发生错了!!!..");
    }
}

3.结果

二  设置指定异常的返回格式 2.1 在全局类设定处理特定异常

这种情况说白了不怎么常用,因为你并不清楚代码存在要报什么异常。

1.代码

  //特定异常
    @ExceptionHandler(ArithmeticException.class)
    @ResponseBody //为了返回数据
    public R error(ArithmeticException e) {
        e.printStackTrace();
        return R.error().message("执行了ArithmeticException异常处理..");
    }

2.如图

3.返回格式

三  自定义返回异常的json格式 3.1 自定义异常处理类

1.自定义一个异常处理类

2.注册异常类

//自定义异常
    @ExceptionHandler(ZidingyiException.class)
    @ResponseBody //为了返回数据
    public R error(ZidingyiException e) {
        e.printStackTrace();
        return R.error().code(e.getCode()).message(e.getMsg());
    }

3.捕捉和调用

4.查看结果

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网页题目:springboot定义统一的异常返回格式(全局,特定,自定义)等-创新互联
链接分享:http://myzitong.com/article/ejpgc.html