Spring-处理异常

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u011077966/article/details/53200440
--在程序运行中如果某个地方出错的话,该怎么办呢?当处理请求的时候,抛出异常该怎么处理呢?如果发生了这样的情况,该给客户端什么响应呢?
不管发生什么事情,不管是好的还是坏的,Servlet请求的输出都是一个Servlet的响应。
如果在请求处理的时候,出现了异常,那它的输出依然会是Servlet响应。异常必须要以某种方式转换为响应。


一:Spring提供了多种方式将异常转换为响应

1)特定的Spring异常将会自动映射为指定的HTTP状态码;
2)异常上可以添加@ResoonseStatus注解,从而将其映射为某一个HTTP状态码;
3)在方法上可以添加@ExceptionHandler注解,使其用来处理异常;
处理异常的最简单方式就是将其映射到HTTP状态码上,进而放到响应之中。

二:异常状态码

1)400 - Bad Request    请求错误

--TypeMismatchException、BindException、HttpMessageNotReadableException、MethodArgumentNotValidException、MissingServletRequestParameterException、

  MissingServletRequestPartException。

2)500 - Internal Server Error       内部服务器错误 

--ConversionNotSupportedException、HttpMessageNotWritableException。

3)404 - Not Found   找不到页面

--NoSuchRequestHandlingMethException

4)406 - Not Acceptable 请求不接受 

--HttpMediaTypeNotAcceptableException

5)415 - Unsupported Media Type 不支持的媒介类型 

--HttpMediaTypeNotSupportedException

6)405 - Mehtod Not Allowed   方法不被允许

--HttpMessageMethodNotSupportedException

展开阅读全文

没有更多推荐了,返回首页