SpringMVC 异常处理HandlerExceptionResolver 笔记(八)
2017-05-27 11:26
316 查看
SpringMVC提供4个异常处理解析器的实现 DefaultHandlerExceptionResolver SimpleMappingExceptionResolver AnnotationMethodHandlerExceptionResolver ResponseStatusExceptionResolver
SpringMVC默认就装配了DefaultHandlerExceptionResolver SpringMVC会将所产生的异常转为响应状态码,然后我们在web.xml配置相应状态码的跳转页面即可,以下是相应exception所对应的错误代码:
Web.xml根据相应的错误码进行错误页面配置:
还有比较常用的是AnnotationMethodHandlerExceptionResolver,这个可以通过在controller类当中定义一个方法处理在整个controller中任何一个处理方法出现exception的响应方式。@ExceptionHandler 参数为需要处理的exception类型。
这个是在UserController类中的一个方法,这个方法有两个参数一个是exception,一个是request。这里定义了如果UserController中任意一个handler处理方法出现RuntimeException异常后,输出错误,并返回一个server error!!! 字符串,如果是JSON可以返回一个JSON对象即可返回页面也是同理。
SpringMVC默认就装配了DefaultHandlerExceptionResolver SpringMVC会将所产生的异常转为响应状态码,然后我们在web.xml配置相应状态码的跳转页面即可,以下是相应exception所对应的错误代码:
exception类型 | 响应状态代码 |
ConversionNoSupportedException | 500(web服务器内部错误) |
HttpMediaTypeNotAcceptableException | 406 (无和请求accept匹配的MIME类型) |
HttpMediaTypeNotSupporteException | 415(不支持的MIME类型) |
HttpMessageNotReadableException | 400 (bad request) |
HttpMessageNotWritableException | 500(web服务器内部错误) |
HttpRequestMethodNotSupportedException | 405(不支持的请求方法) |
MissingServletParameterException | 400 |
NoSuchHandingMethodException | 404 (找不到匹配的资源) |
TypeMismatchException | 400 |
<error-page> <error-code>404</error-code> <location>/404.html</location> </error-page>
还有比较常用的是AnnotationMethodHandlerExceptionResolver,这个可以通过在controller类当中定义一个方法处理在整个controller中任何一个处理方法出现exception的响应方式。@ExceptionHandler 参数为需要处理的exception类型。
@ExceptionHandler(RuntimeException.class) public @ResponseBody String exception(RuntimeException e,HttpServletRequest request){ e.printStackTrace(); return "server error!!!"; }
这个是在UserController类中的一个方法,这个方法有两个参数一个是exception,一个是request。这里定义了如果UserController中任意一个handler处理方法出现RuntimeException异常后,输出错误,并返回一个server error!!! 字符串,如果是JSON可以返回一个JSON对象即可返回页面也是同理。
相关文章推荐
- SpringMVC 异常统一处理接口 HandlerExceptionResolver
- SpringMVC 异常处理 - HandlerExceptionResolver
- SpringMVC 异常处理 - HandlerExceptionResolver
- 【SpringMVC】异常处理ExceptionHandlerExceptionResolver
- SpringMVC 异常处理 - HandlerExceptionResolver
- 利用HandlerExceptionResolver对SpringMVC进行统一异常处理
- SpringMVC 异常处理 - HandlerExceptionResolver
- 使用Spring MVC HandlerExceptionResolver处理异常
- HandlerExceptionResolver统一捕获系统异常做处理
- Spring 异常处理HandlerExceptionResolver
- 使用Spring MVC HandlerExceptionResolver处理异常
- Spring MVC的Controller统一异常处理:HandlerExceptionResolver
- Java深入 - Spring 异常处理HandlerExceptionResolver
- Spring MVC 全局异常处理(1) --HandlerExceptionResolver
- 使用Spring MVC HandlerExceptionResolver处理异常
- 14.SpringMVC 异常处理 - HandlerExceptionResolver
- Spring MVC 全局异常处理(1) --HandlerExceptionResolver
- SpringMVC框架中的异常解析器-ExceptionHandler和HandlerExceptionResolver
- Spring MVC的Controller统一异常处理:HandlerExceptionResolver
- java深入 - Spring 异常处理HandlerExceptionResolver