• 【从0到1,搭建Spring Boot+RESTful API+Shiro+Mybatis+SQLServer权限系统】04、统一处理异常


    本节讨论如何使用Spring的异常处理机制,当我们程序出现错误时,以相同的一种格式,把错误信息返回给客户端

    1、创建一些自定义异常

    public class TipsException extends Exception {
        private static final long serialVersionUID = 2784987176856514682L;
    
        public TipsException(String string) {
            super(string);
        }
    
    }

    2、使用@RestControllerAdvice创建一个异常处理的RESTful控制器,当其他控制器抛出异常时,会被这个控制器截获并处理

    @RestControllerAdvice
    public class ExceptionController {
    
        @ExceptionHandler(TipsException.class)
        @ResponseStatus(HttpStatus.METHOD_NOT_ALLOWED)
        public AppResult tips(TipsException e) {
            return new AppResult().error(e.getMessage());
        }
        @ExceptionHandler()
        @ResponseStatus(HttpStatus.ALREADY_REPORTED)
        public AppResult spittleNotFound(Exception e) {
            return new AppResult().error("内部错误!请联系系统管理员!" + e.getClass().getTypeName() + e.getMessage());
        }
    
    }

    这里的异常处理会返回一个和普通控制器一样的AppResult对象,保证任何时候返回给客户端的值都是统一格式的

    3、运行测试

  • 相关阅读:
    GCD之各种派发
    Effective Objective-C 笔记之熟悉OC
    正则表达式之正向预查和负向预查
    vue的实例属性$refs
    vue的实例属性$options
    vue的实例属性$data
    vue的实例属性$el
    vue强制更新$forceUpdate()
    vue的extends的使用
    vue的mixins的使用
  • 原文地址:https://www.cnblogs.com/LiveYourLife/p/9173166.html
Copyright © 2020-2023  润新知