zoukankan      html  css  js  c++  java
  • SpringBoot统一异常处理以及获取ThrowableException中的detailMessage属性;

    一、新建一个统一异常处理类;如下 


    @ControllerAdvice
    public class ExceptionHandlerConfig {

    /**
    * 全局异常捕捉处理
    * @param ex
    * @return
    */
    @ResponseBody
    @ExceptionHandler(Exception.class)
    public Map errorHandler(Exception ex) {
    Map map = new HashMap();
    map.put("code", 100);
    map.put("msg",ex.getMessage());
    return map;
    }

    }
         @ControllerAdvice是一个@Component,用于定义@ExceptionHandler,@InitBinder和@ModelAttribute方法,适用于所有使用@RequestMapping方法。

    @ResponseBody 返回json数据
    @ExceptionHandler(Exception.class) springboot统一异常处理注解;
     二、如果是自定义异常的话,查看debug信息,发现自己输出的异常信息在ThrowableException中的detailMessage属性,

     

    使用 

    ex.getCause().getMessage() 方法可以获取该属性;
    完整代码;


    @ControllerAdvice
    public class ExceptionHandlerConfig {

    /**
    * 全局异常捕捉处理
    * @param ex
    * @return
    */
    @ResponseBody
    @ExceptionHandler(Exception.class)
    public Map errorHandler(Exception ex) {
    Map map = new HashMap();
    map.put("code", 100);
    if(ex.getCause().getMessage().equals("AuthorityFail")){
    map.put("msg","你没有权限,请联系管理员");
    }else {
    map.put("msg",ex.getMessage());
    }
    return map;
    }

    }
     
    ————————————————
    版权声明:本文为CSDN博主「蘇夏」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qq_31807569/article/details/88672156

  • 相关阅读:
    ASP.NET WebApi 文档Swagger中度优化
    ASP.NET五步打包下载Zip文件
    JavaScript——HashMap实现
    JS实现集合和ECMA6集合
    JavaScript——双向链表实现
    用JavaScript来实现链表LinkedList
    JavaScript结构三层——思想快速介绍
    浏览器自动刷新——基于Nodejs的Gulp LiveReload与VisualStudio完美结合。
    JavaScript原型OOP——你上车了吗?
    再谈JavaScript闭包及应用
  • 原文地址:https://www.cnblogs.com/telwanggs/p/14715005.html
Copyright © 2011-2022 走看看