From 47de8ceefb38ee55fc577f94bfda09dd5adbd29d Mon Sep 17 00:00:00 2001 From: huanghongfa <18228131219@163.com> Date: 星期二, 22 十二月 2020 17:18:39 +0800 Subject: [PATCH] 测试更新 --- springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java | 30 ++++++++++++++++++++++++++++++ 1 files changed, 30 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java index f388d9a..831882d 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java @@ -1,11 +1,19 @@ package com.panzhihua.applets.exception; +import com.panzhihua.common.constants.HttpStatus; import com.panzhihua.common.exceptions.TokenException; import com.panzhihua.common.exceptions.UnAuthenticationException; import com.panzhihua.common.exceptions.UnAuthorizationException; import com.panzhihua.common.model.vos.R; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.BindingResult; +import org.springframework.validation.FieldError; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; + +import java.util.List; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -13,6 +21,7 @@ * @author: huang.hongfa weixin hhf9596 qq 959656820 * @create: 2020-11-25 14:36 **/ +@Slf4j @RestControllerAdvice public class GlobalExceptionCapture { /** @@ -52,6 +61,27 @@ */ @ExceptionHandler(value = Exception.class) public R errorHandler(Exception ex) { + log.error("捕捉到全局异常【{}】",ex.getMessage()); return R.fail(); } + + /** + * 校验异常 + * @param ex valid + * @return 返回json + */ + @ExceptionHandler(value = MethodArgumentNotValidException.class) + public R methodArgumentNotValidException(MethodArgumentNotValidException ex) { + BindingResult result = ex.getBindingResult(); + StringBuilder errorMessage = new StringBuilder(); + if (result.hasErrors()) { + List<ObjectError> errors = result.getAllErrors(); + errors.forEach(p ->{ + FieldError fieldError = (FieldError) p; + errorMessage.append(fieldError.getDefaultMessage()); + errorMessage.append(" "); + }); + } + return R.fail(HttpStatus.BAD_REQUEST,errorMessage.toString()); + } } -- Gitblit v1.7.1