From 37f55403e7573d8c15b6b0f957b7cb1baf6be4ea Mon Sep 17 00:00:00 2001
From: huanghongfa <18228131219@163.com>
Date: 星期二, 29 十二月 2020 14:47:15 +0800
Subject: [PATCH] 攀枝花项目服务层异常捕获统一返回给视图层服务

---
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java |   66 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 16 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java
similarity index 69%
rename from springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java
rename to springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java
index 3ce44d6..aa86c4b 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/exception/GlobalExceptionCapture.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/exceptions/GlobalExceptionCapture.java
@@ -1,11 +1,10 @@
-package com.panzhihua.applets.exception;
+package com.panzhihua.common.exceptions;
 
 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.core.Ordered;
+import org.springframework.core.annotation.Order;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.FieldError;
 import org.springframework.validation.ObjectError;
@@ -23,6 +22,7 @@
  **/
 @Slf4j
 @RestControllerAdvice
+@Order(Ordered.HIGHEST_PRECEDENCE)
 public class GlobalExceptionCapture {
     /**
      * 拦截捕捉自定义异常 TokenException.class
@@ -41,7 +41,7 @@
      */
     @ExceptionHandler(value = UnAuthenticationException.class)
     public R myErrorHandlerUnAuthenticationException(UnAuthenticationException ex) {
-        return R.fail(ex.getCode(),ex.getMsg());
+        return R.fail(ex.getCode(),"没有登录");
     }
 
     /**
@@ -51,19 +51,42 @@
      */
     @ExceptionHandler(value = UnAuthorizationException.class)
     public R myErrorHandlerUnAuthorizationException(UnAuthenticationException ex) {
-        return R.fail(ex.getCode(),ex.getMsg());
+        return R.fail(ex.getCode(),"没有访问权限");
     }
 
-//    /**
-//     * 全局异常捕捉处理
-//     * @param ex 所有运行时异常
-//     * @return R 500
-//     */
-//    @ExceptionHandler(value = Exception.class)
-//    public R errorHandler(Exception ex) {
-//        log.error("捕捉到全局异常【{}】",ex.getMessage());
-//        return R.fail(ex.getMessage());
-//    }
+
+    /**
+     *
+     * @param ex 数据库异常
+     * @return
+     */
+    @ExceptionHandler(value = java.sql.SQLSyntaxErrorException.class)
+    public R sqlSyntaxExcetption(Exception ex) {
+        log.error("数据库异常【{}】",ex.getMessage());
+        return R.fail("sql语法错误");
+    }
+
+    /**
+     *
+     * @param ex 数据库异常
+     * @return
+     */
+    @ExceptionHandler(value = java.sql.SQLException.class)
+    public R sqlException(Exception ex) {
+        log.error("数据库异常【{}】",ex.getMessage());
+        return R.fail("sql错误");
+    }
+
+    /**
+     *
+     * @param ex 数据库异常
+     * @return
+     */
+    @ExceptionHandler(value = ServiceException.class)
+    public R serviceException(Exception ex) {
+        log.error("服务层业务异常【{}】",ex.getMessage());
+        return R.fail(ex.getMessage());
+    }
 
     /**
      * 校验异常
@@ -84,4 +107,15 @@
         }
         return R.fail(HttpStatus.BAD_REQUEST,errorMessage.toString());
     }
+
+//    /**
+//     * 全局异常捕捉处理
+//     * @param ex 所有运行时异常
+//     * @return R 500
+//     */
+//    @ExceptionHandler(value = Exception.class)
+//    public R errorHandler(Exception ex) {
+//        log.error("捕捉到全局异常【{}】",ex.getMessage());
+//        return R.fail("接口请求失败");
+//    }
 }

--
Gitblit v1.7.1