springboot后端拦截器重定向错误页面
时间: 2024-12-11 22:14:26 浏览: 29
Spring Boot 后端拦截器可以用于控制请求流程并处理特定情况,例如当发生异常需要跳转到错误页面时,你可以使用全局异常处理器(Global Exception Handler)来配置这样的功能。通常情况下,你会创建一个实现了`HandlerExceptionResolver`接口的类,然后在其中定义如何将异常转换为HTTP响应,并设置错误页面。
以下是简单的步骤:
1. 配置一个全局的`ExceptionHandler`类:
```java
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.servlet.ModelAndView;
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value = {Exception.class})
public ModelAndView handleException(Exception ex) {
// 记录日志
log.error("An error occurred", ex);
// 创建错误视图模型
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("error/error-page"); // 自定义错误页面路径
modelAndView.addObject("exception", ex); // 可选:传递错误信息给模板
// 返回状态码和错误页面
modelAndView.setStatus(HttpStatus.BAD_REQUEST); // 或其他适当的HTTP状态码
return modelAndView;
}
}
```
在这个例子中,如果控制器抛出任何类型的异常,都会被这个拦截器捕获,然后返回自定义的错误页面,并设置HTTP状态码。
阅读全文