美文网首页
对处理请求过程中产生的异常处理

对处理请求过程中产生的异常处理

作者: Colors_a378 | 来源:发表于2018-12-16 10:21 被阅读0次

            在处理请求的过程中可能产生异常,如果这个异常表明这次请求不会得到正常的处理,那么应当向用户告知。Spring已经内置了一些规则,当在处理请求的过程抛出如下异常,那么就会自动的设置响应状态码。可以通过在Mapping Request的方法中直接抛出这些异常来测试是否会自动设置响应状态码,返回响应。

    这些内置的映射非常有用,但是对于其他异常就无能为力了。如果要把自定义的异常也映射到响应状态码,这个非常简单只需要在自定义的异常类上添加注解:@ResponseStatus,设置这个注解的value属性。值域是枚举类HttpStatus中包含的值。

            如果并不想简单的只是简单的给出一个表示请求处理失败(状态码揭示了这一点)的响应,那么可以通过在一个Controller类中定义被@ExceptionHandler注解的方法。


    方法errorPage所在的Controllrt类中的任何一个处理器方法抛出MyException异常时,errorPage方法接管处理流程,直接返回逻辑视图error

            在一个Controller类中添加ExceptionHandler方法,ExceptionHandler方法只会在该Controller类中有效,对于其他的Controller类无效,如果要定义一个ExceptionHandler方法使得能够“应付”任何一个Controller的任何一个处理器方法抛出的对应的异常,这需要定义了一个ControllerAdvice类。ControllerAdvice类是一个被@ControllerAdvice注解的类,@ControllerAdvice已经包含@Component注解。之后在ControllerAdvice类中定义ExceptionHandler方法就可以了。

    相关文章

      网友评论

          本文标题:对处理请求过程中产生的异常处理

          本文链接:https://www.haomeiwen.com/subject/cymzhqtx.html