Spring Boot 自定义异常跳转页面
自定义详细的异常对应页面的跳转(公共配置)。
两种方式
方式一
@Configuration
public class ExceptionConf {
@Bean
public SimpleMappingExceptionResolver resolver() {
SimpleMappingExceptionResolver resolver = new SimpleMappingExceptionResolver();
Properties properties = new Properties();
properties.setProperty("详细的异常(java.lang.ArithmeticException)", "/500");
resolver.setExceptionMappings(properties);
return resolver;
}
}
方式二
public class MyExceptionResolver implements HandlerExceptionResolver {
@Override
public ModelAndView resolveException(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) {
if (e instanceof ArithmeticException) {
ModelAndView mv = new ModelAndView("/500");
return mv;
}
return null;
}
}
接着,在在启动类(Application)中注册该bean
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
// 注册统一异常处理bean
@Bean
public MyExceptionResolver myExceptionResolver() {
return new MyExceptionResolver();
}
}