美文网首页
spring 处理异常

spring 处理异常

作者: 熊熊要更努力 | 来源:发表于2017-08-15 22:15 被阅读32次

spring提供了3种方式将异常转化为响应

  1. 特定spring异常将会自动映射为指定的http状态码
  2. 异常上可以添加@responseStatus注释,从而讲将其映射为某一个http状态码.
  3. 在方法上可以添加@ExceptionHandler注释,使其用来处理异常.
spring的一些异常会默认映射为http状态码

以上异常一般由spring自身抛出,作为DispatchServlet处理过程中或执行校验时出现问题的结果.

但是 ,如果多个 控制器类中都要抛出某个特定的异常,那么在所有 的控制器方法中 都要重复相同的@ExceptionHandler方法.
spring 解决方法:控制器通知
控制器通知是带有@ControlAdvice注解的类,这个类 会包含一个或多个如下类型的方法 :

  • @ExceptionHandler 注解标注的方法
  • @InitBinder
  • @ModelAttribute
    在带有@ControllerAdvice注解的类中 ,以上所述的这些方法会运用到 程序所有控制器 中带有@requestMapping注解的方法上
    @controlAdvice注解本身已经使用了@component ,因此@controllerAdvice注解所标注的类将会被组件扫描获取到(与带有compent注解的类一样)
    @ControlAdvice最为使用的一个场景就是将所有的@ExceptionHandler方法收集到一个类中,这样所有控制器的异常就能 在一个地方进行一致的处理 .

相关文章

  • spring boot异常处理

    spring boot异常处理 在spring mvc异常处理一文中,我介绍了在spring mvc中如何配置异常...

  • Spring 之异常处理

    spring的异常处理 spring的异常处理,有两种方式 1、实现HandlerExceptionResolve...

  • SpringMVC(十三)异常处理

    一、异常处理 Spring MVC 通过 HandlerExceptionResolver 处理程序 的异常,包括...

  • SpringMVC异常处理

    Spring MVC处理异常有3种方式: (1)使用Spring MVC提供的简单异常处理器SimpleMappi...

  • SpringMVC统一异常处理

    Spring MVC处理异常有3种方式: (1)使用Spring MVC提供的简单异常处理器SimpleMappi...

  • springboot之统一异常处理

    spring统一异常处理 使用spring的统一异常处理,我们就不再需要在业务代码中就行显式的捕获异常处理,在da...

  • Spring中处理Filter中的异常

    通常的Spring全局异常处理并不能处理Filter中的异常。 How to manage exceptions ...

  • spring 处理异常

    spring提供了3种方式将异常转化为响应 特定spring异常将会自动映射为指定的http状态码 异常上可以添加...

  • spring异常处理

    中文乱码解决方案 spring提供了一个CharacterEncodingFilter过滤器,可用于解决乱码问题,...

  • Spring异常处理

    1、配置简单异常处理器(此方法用于简单处理异常,即只能做跳转) 其中Key对应需要处理的异常种类,value对应需...

网友评论

      本文标题:spring 处理异常

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