1. 自定义异常
public class SystemException extends RuntimeException{private static final long serialVersionUID = 1L;public SystemException(String message){super(message);}public SystemException(Throwable cause){super(cause);}public SystemException(String message,Throwable cause){super(message,cause);}}
2. 异常处理
返回错误状态码。说白了就是返回 ResponseEntity 对象,话不多说直接看代码
@RestControllerAdvice public class SystemExceptionHandler {// Result<?> 是自己定义的统一返回格式// 处理自定义异常@ExceptionHandler(SystemException.class)public ResponseEntity<Result<?>> handlerRException(SystemException e) {HttpStatus httpStatus = HttpStatus.INTERNAL_SERVER_ERROR;return new ResponseEntity<>(Result.error(e.getMessage()), httpStatus);}// 返回json格式@ExceptionHandler(Exception.class)public Result<?> handleException(Exception e) {log.error(e.getMessage(), e);return Result.error(e.getMessage());}