我要介绍全球处理器我的web应用程序:@ExceptionHandler当地VS全球
@ControllerAdvice
public class GlobalControllerExceptionHandler {
@ExceptionHandler(CustomRuntimeException.class)
public @ResponseBody ImmutableMap<?, String> handleNullResponseException(CustomRuntimeException e) {
return ImmutableMap.of(e.getClass(), e.getMessage());
}
}
但问题是,旧的代码包含与当地处理少数像这样的控制器:
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
@ExceptionHandler(Exception.class)
public @ResponseBody ExceptionDetails handleException(Exception e) {
return handleException(e);
}
当控制器抛出CustomRuntimeException它由当地一个不GLO处理bal。为了解决这个问题,我可以在这些控制器中添加类似于全局的本地处理程序。但是对我来说这不是一件好事。
问题:是否有可能将处理自定义异常重定向到全局处理程序?