zoukankan      html  css  js  c++  java
  • springboot统一异常处理类及注解参数为数组的写法

    统一异常处理类

    package com.wdcloud.categoryserver.common.exception;
    
    import com.wdcloud.categoryserver.common.constant.CodeConstants;
    import com.wdcloud.categoryserver.common.entity.BaseView;
    import org.springframework.http.converter.HttpMessageNotReadableException;
    import org.springframework.web.bind.annotation.ControllerAdvice;
    import org.springframework.web.bind.annotation.ExceptionHandler;
    import org.springframework.web.bind.annotation.ResponseBody;
    import org.springframework.web.bind.annotation.RestController;
    import org.springframework.web.multipart.support.MissingServletRequestPartException;
    
    import javax.servlet.http.HttpServletRequest;
    
    /**
     * @describe: 全局异常处理
     * @author: zhuchunwang
     * @date: 2018/5/29 17:40
     * @version: 1.0
     */
    @ControllerAdvice(annotations = {RestController.class})
    public class GlobalExceptionHandler {
        /**
         * 默认未知异常
         * @param req
         * @param e
         * @return
         * @throws Exception
         */
        @ExceptionHandler(value = Exception.class)
        @ResponseBody
        public BaseView defaultErrorHandler(HttpServletRequest req, Exception e) throws Exception {
            e.printStackTrace();
            return  new BaseView(CodeConstants.SYSTEM_EXCEPTION,CodeConstants.SYSTEM_EXCEPTION_MSG);
        }
    
        /**
         * 参数异常
         * @param req
         * @param e
         * @return
         * @throws Exception
         */
        @ExceptionHandler(value = {HttpMessageNotReadableException.class, MissingServletRequestPartException.class})
        @ResponseBody
        public BaseView httpMessageNotReadableExceptionErrorHandler(HttpServletRequest req, Exception e) throws Exception {
            e.printStackTrace();
            return  new BaseView(CodeConstants.PARAMETER_ERROR,CodeConstants.PARAMETER_ERROR_MSG);
        }
    }

    一个参数时这样写

    @ExceptionHandler(value = HttpMessageNotReadableException.class)

    多个参数时这样写

    @ExceptionHandler(value = {HttpMessageNotReadableException.class, MissingServletRequestPartException.class})
  • 相关阅读:
    CH负责内容的两个人——北漂18年(66)
    perl 跨行匹配;
    elk之nginx
    perl 分析binlog 定位错误sql 思路
    rsyslog 日志格式和输出
    rsyslog 定义模板
    rsyslog ~ 波浪号
    过滤器
    rsyslog masg和rawmsg的区别
    金融行业的BI应用分析
  • 原文地址:https://www.cnblogs.com/zhucww/p/9167857.html
Copyright © 2011-2022 走看看