spring 注解

Spring 异常处理
  
  • @ExceptionHandler:统一处理某一类异常,从而能够减少代码重复率和复杂度
  • @ControllerAdvice:异常集中处理,更好的使业务逻辑与异常处理剥离开
  • @ResponseStatus:可以将某种异常映射为HTTP状态码
      •  @ExceptionHandle
        •   

          该注解作用对象为方法,并且在运行时有效,value()可以指定异常类。由该注解注释的方法可以具有灵活的输入参数(详细参见Spring API):

          • 异常参数:包括一般的异常或特定的异常(即自定义异常),如果注解没有指定异常类,会默认进行映射。
          • 请求或响应对象 (Servlet API or Portlet API): 你可以选择不同的类型,如ServletRequest/HttpServletRequest或PortleRequest/ActionRequest/RenderRequest
          • Session对象(Servlet API or Portlet API): HttpSession或PortletSession。
          • WebRequest或NativeWebRequest 
          • Locale
          • InputStream/Reader 
          • OutputStream/Writer 
          • Model

          方法返回值可以为:

          • ModelAndView对象
          • Model对象
          • Map对象
          • View对象
          • String对象
          • 还有@ResponseBody、HttpEntity<?>或ResponseEntity<?>,以及void
      •    @ControllerAdvice 
        •   该注解作用对象为TYPE,包括类、接口和枚举等,在运行时有效,并且可以通过Spring扫描为bean组件。其可以包含由@ExceptionHandler、@InitBinder 和@ModelAttribute标注的方法,可以处理多个Controller类,这样所有控制器的异常可以在一个地方进行处理。 
      •  

  未完待续...

posted @ 2019-01-11 16:43  G_Lybbh  阅读(91)  评论(0编辑  收藏  举报