|
|
@@ -1,94 +0,0 @@
|
|
|
-package com.fs.Exception;
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-import com.fs.common.core.domain.R;
|
|
|
-import com.fs.common.exception.CustomException;
|
|
|
-import com.fs.common.exception.ServiceException;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.dao.DuplicateKeyException;
|
|
|
-import org.springframework.security.access.AccessDeniedException;
|
|
|
-import org.springframework.validation.BindException;
|
|
|
-import org.springframework.validation.FieldError;
|
|
|
-import org.springframework.web.bind.MethodArgumentNotValidException;
|
|
|
-import org.springframework.web.bind.annotation.ExceptionHandler;
|
|
|
-import org.springframework.web.bind.annotation.RestControllerAdvice;
|
|
|
-import org.springframework.web.servlet.NoHandlerFoundException;
|
|
|
-
|
|
|
-
|
|
|
-/**
|
|
|
- * 异常处理器
|
|
|
- */
|
|
|
-@RestControllerAdvice
|
|
|
-public class FSExceptionHandler {
|
|
|
- private Logger logger = LoggerFactory.getLogger(getClass());
|
|
|
-
|
|
|
- /**
|
|
|
- * 处理自定义异常
|
|
|
- */
|
|
|
- @ExceptionHandler(FSException.class)
|
|
|
- public R handleRRException(FSException e){
|
|
|
- R r = new R();
|
|
|
- r.put("code", e.getCode());
|
|
|
- r.put("msg", e.getMessage());
|
|
|
-
|
|
|
- return r;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 处理自定义异常
|
|
|
- */
|
|
|
- @ExceptionHandler(ServiceException.class)
|
|
|
- public R handleRRException(ServiceException e){
|
|
|
- R r = new R();
|
|
|
- r.put("code", e.getCode());
|
|
|
- r.put("msg", e.getMessage());
|
|
|
-
|
|
|
- return r;
|
|
|
- }
|
|
|
-
|
|
|
- @ExceptionHandler(NoHandlerFoundException.class)
|
|
|
- public R handlerNoFoundException(Exception e) {
|
|
|
- logger.error(e.getMessage(), e);
|
|
|
- return R.error(404, "路径不存在,请检查路径是否正确");
|
|
|
- }
|
|
|
-
|
|
|
- @ExceptionHandler(DuplicateKeyException.class)
|
|
|
- public R handleDuplicateKeyException(DuplicateKeyException e){
|
|
|
- logger.error(e.getMessage(), e);
|
|
|
- return R.error("数据库中已存在该记录");
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- @ExceptionHandler(Exception.class)
|
|
|
- public R handleException(Exception e){
|
|
|
- logger.error(e.getMessage(), e);
|
|
|
- return R.error();
|
|
|
- }
|
|
|
- @ExceptionHandler(AccessDeniedException.class)
|
|
|
- public R handleAccessDeniedException(AccessDeniedException e){
|
|
|
- logger.error(e.getMessage(), e);
|
|
|
- return R.error("没有权限");
|
|
|
- }
|
|
|
-
|
|
|
- @ExceptionHandler(BindException.class)
|
|
|
- public R bindExceptionHandler(BindException e) {
|
|
|
- FieldError error = e.getFieldError();
|
|
|
- String message = String.format("%s", error.getDefaultMessage());
|
|
|
- return R.error(message);
|
|
|
- }
|
|
|
-
|
|
|
- @ExceptionHandler(MethodArgumentNotValidException.class)
|
|
|
- public R exceptionHandler(MethodArgumentNotValidException e) {
|
|
|
- FieldError error = e.getBindingResult().getFieldError();
|
|
|
- String message = String.format("%s", error.getDefaultMessage());
|
|
|
- return R.error(message);
|
|
|
- }
|
|
|
- @ExceptionHandler(CustomException.class)
|
|
|
- public R handleException(CustomException e){
|
|
|
-
|
|
|
- return R.error(e.getMessage());
|
|
|
- }
|
|
|
-}
|