记录一次在Spring中处理统一异常处理的方法
@RestControllerAdvice
@ControllerAdvice
,是Spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。
@ExceptionHandler
@ExceptionHandler
用来与@RestControllerAdvice
配合使用,当捕获到指定的异常时,可以作出相应处理。
这里展示当参数签名失败时的异常处理:
@RestControllerAdvice public class SignatureExceptionHandler extends ResponseEntityExceptionHandler {
public SignatureExceptionHandler() { }
@ExceptionHandler(SignatureExpireException.class) public RestResponse<?> handleSignatureExpireException(SignatureExpireException ex) { return ResultBuilder.signatureError(ErrorCodeEnum.SIGNATURE_ERROR, ex.getMessage()); }
}
|
这时, 当捕获到SignatureExpireException
异常的时候, 就会进入这个handler
里面来处理。