Class GlobalExceptionHandler
java.lang.Object
com.codeupsoft.base.web.exception.GlobalExceptionHandler
全局异常处理器 统一处理应用中的各种异常,提供一致的错误响应格式.
- Since:
- 1.0.0
- Author:
- codeupsoft
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncom.codeupsoft.base.common.response.R<Void> handleBaseException(com.codeupsoft.base.common.exception.CodeupSoftBaseException e) 处理业务异常.com.codeupsoft.base.common.response.R<Void> handleBindException(org.springframework.validation.BindException e) 处理参数绑定异常.com.codeupsoft.base.common.response.R<Void> handleConstraintViolationException(jakarta.validation.ConstraintViolationException e) 处理参数校验异常(方法参数).com.codeupsoft.base.common.response.R<Void> handleException(jakarta.servlet.http.HttpServletRequest request, Exception e) 处理系统异常.com.codeupsoft.base.common.response.R<Void> handleHttpMediaTypeNotSupportedException(org.springframework.web.HttpMediaTypeNotSupportedException e) 处理HTTP媒体类型不支持异常.com.codeupsoft.base.common.response.R<Void> handleHttpRequestMethodNotSupportedException(org.springframework.web.HttpRequestMethodNotSupportedException e) 处理HTTP请求方法不支持异常.com.codeupsoft.base.common.response.R<Void> 处理非法参数异常.com.codeupsoft.base.common.response.R<Void> handleMethodArgumentNotValidException(org.springframework.web.bind.MethodArgumentNotValidException e) 处理参数校验异常(RequestBody).com.codeupsoft.base.common.response.R<Void> handleMissingServletRequestParameterException(org.springframework.web.bind.MissingServletRequestParameterException e) 处理缺少Servlet请求参数异常.com.codeupsoft.base.common.response.R<Void> 处理空指针异常.com.codeupsoft.base.common.response.R<Void> 处理数字格式异常.com.codeupsoft.base.common.response.R<Void> handleServletException(jakarta.servlet.ServletException e) 处理Servlet异常.com.codeupsoft.base.common.response.R<Void> 处理SQL异常.com.codeupsoft.base.common.response.R<Void> nooResourceFoundException(org.springframework.web.servlet.resource.NoResourceFoundException e) 处理没有找到资源异常.
-
Constructor Details
-
GlobalExceptionHandler
public GlobalExceptionHandler()
-
-
Method Details
-
handleBaseException
@ExceptionHandler(com.codeupsoft.base.common.exception.CodeupSoftBaseException.class) public com.codeupsoft.base.common.response.R<Void> handleBaseException(com.codeupsoft.base.common.exception.CodeupSoftBaseException e) 处理业务异常.捕获BaseException及其子类,返回业务定义的错误码和消息.
- Parameters:
e- 业务异常- Returns:
- 错误响应
-
handleConstraintViolationException
@ExceptionHandler(jakarta.validation.ConstraintViolationException.class) public com.codeupsoft.base.common.response.R<Void> handleConstraintViolationException(jakarta.validation.ConstraintViolationException e) 处理参数校验异常(方法参数).捕获@Validated注解触发的ConstraintViolationException.
- Parameters:
e- 参数校验异常- Returns:
- 错误响应
-
handleMethodArgumentNotValidException
@ExceptionHandler(org.springframework.web.bind.MethodArgumentNotValidException.class) public com.codeupsoft.base.common.response.R<Void> handleMethodArgumentNotValidException(org.springframework.web.bind.MethodArgumentNotValidException e) 处理参数校验异常(RequestBody).捕获@Valid注解触发的MethodArgumentNotValidException.
- Parameters:
e- 参数校验异常- Returns:
- 错误响应
-
handleBindException
@ExceptionHandler(org.springframework.validation.BindException.class) public com.codeupsoft.base.common.response.R<Void> handleBindException(org.springframework.validation.BindException e) 处理参数绑定异常.捕获数据绑定时的BindException.
- Parameters:
e- 绑定异常- Returns:
- 错误响应
-
handleIllegalArgumentException
@ExceptionHandler(IllegalArgumentException.class) public com.codeupsoft.base.common.response.R<Void> handleIllegalArgumentException(IllegalArgumentException e) 处理非法参数异常.- Parameters:
e- 非法参数异常- Returns:
- 错误响应
-
handleNullPointerException
@ExceptionHandler(NullPointerException.class) public com.codeupsoft.base.common.response.R<Void> handleNullPointerException(NullPointerException e) 处理空指针异常.- Parameters:
e- 空指针异常- Returns:
- 错误响应
-
handleNumberFormatException
@ExceptionHandler(NumberFormatException.class) public com.codeupsoft.base.common.response.R<Void> handleNumberFormatException(NumberFormatException e) 处理数字格式异常.- Parameters:
e- 数字格式异常- Returns:
- 错误响应
-
handleSqlException
@ExceptionHandler(SQLException.class) @ResponseStatus(INTERNAL_SERVER_ERROR) public com.codeupsoft.base.common.response.R<Void> handleSqlException(SQLException e) 处理SQL异常.- Parameters:
e- SQL异常- Returns:
- 错误响应
-
handleHttpRequestMethodNotSupportedException
@ExceptionHandler(org.springframework.web.HttpRequestMethodNotSupportedException.class) public com.codeupsoft.base.common.response.R<Void> handleHttpRequestMethodNotSupportedException(org.springframework.web.HttpRequestMethodNotSupportedException e) 处理HTTP请求方法不支持异常.- Parameters:
e- HTTP请求方法不支持异常- Returns:
- 错误响应
-
handleHttpMediaTypeNotSupportedException
@ExceptionHandler(org.springframework.web.HttpMediaTypeNotSupportedException.class) public com.codeupsoft.base.common.response.R<Void> handleHttpMediaTypeNotSupportedException(org.springframework.web.HttpMediaTypeNotSupportedException e) 处理HTTP媒体类型不支持异常.- Parameters:
e- HTTP媒体类型不支持异常- Returns:
- 错误响应
-
handleMissingServletRequestParameterException
@ExceptionHandler(org.springframework.web.bind.MissingServletRequestParameterException.class) public com.codeupsoft.base.common.response.R<Void> handleMissingServletRequestParameterException(org.springframework.web.bind.MissingServletRequestParameterException e) 处理缺少Servlet请求参数异常.- Parameters:
e- 缺少Servlet请求参数异常- Returns:
- 错误响应
-
handleServletException
@ExceptionHandler(jakarta.servlet.ServletException.class) public com.codeupsoft.base.common.response.R<Void> handleServletException(jakarta.servlet.ServletException e) 处理Servlet异常.- Parameters:
e- Servlet异常- Returns:
- 错误响应
-
handleException
-
nooResourceFoundException
@ExceptionHandler(org.springframework.web.servlet.resource.NoResourceFoundException.class) public com.codeupsoft.base.common.response.R<Void> nooResourceFoundException(org.springframework.web.servlet.resource.NoResourceFoundException e) 处理没有找到资源异常.捕获没有找到资源的异常,返回404错误.
- Parameters:
e- 没有找到资源异常- Returns:
- 错误响应
-