diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java index 93006848..549d2847 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/SysRuntimeExceptionHandler.java @@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; *

* Created at 2020/8/6 5:03 下午 */ -@RestControllerAdvice +//@RestControllerAdvice public class SysRuntimeExceptionHandler { @ExceptionHandler(TokenRuntimeException.class) diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java index 71be3519..01fa4a49 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/exception/TokenRuntimeException.java @@ -12,7 +12,7 @@ import lombok.Data; * Created at 2020/8/6 4:58 下午 */ @Data -public class TokenRuntimeException extends RuntimeException{ +public class TokenRuntimeException extends Exception{ private String code = "401"; private String msg; diff --git a/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java b/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java index 44ae7eae..38faf354 100644 --- a/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java +++ b/adc-da-main/src/main/java/com/adc/da/main/advice/AdcDaBaseExceptionAdvice.java @@ -13,11 +13,23 @@ import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.ResponseStatus; +import java.util.HashSet; +import java.util.Set; + @Slf4j @ControllerAdvice @Order(value=4) public class AdcDaBaseExceptionAdvice { + private static Set errMsg = new HashSet<>(); + + static { + errMsg.add("token已过期"); + errMsg.add("未登录"); + errMsg.add("token解析错误"); + errMsg.add("员工不存在"); + } + @ResponseStatus(HttpStatus.OK) @ExceptionHandler(AdcDaBaseException.class) @@ -34,8 +46,8 @@ public class AdcDaBaseExceptionAdvice { log.error(exception.getMessage(), exception); // TODO 在数据库中记录程序异常,这个地方的异常是未处理的异常,需要管理员查看并进行处理以防重复出现 if(exception.getStackTrace() != null){ - if("token已过期".equals(exception.getMessage())){ - return Result.error(ResponseMessageCodeEnum.ERROR_TOKEN.getCode(), "token已过期,请重新登录"); + if(errMsg.contains(exception.getMessage())){ + return Result.error(ResponseMessageCodeEnum.ERROR_TOKEN.getCode(), "token无效,请登录"); } } return Result.error(ResponseMessageCodeEnum.ERROR.getCode(), "程序异常,请重试。如果重复出现请联系管理员处理!");