当前位置: 代码迷 >> 综合 >> SpringBoot__SpringMVC 中 @ControllerAdvice、@ExceptionHandler()、@ModelAttribute()、@InitBinder()简单使用
  详细解决方案

SpringBoot__SpringMVC 中 @ControllerAdvice、@ExceptionHandler()、@ModelAttribute()、@InitBinder()简单使用

热度:22   发布时间:2023-11-14 18:20:25.0

本篇简单的讲一下SpringMVC 中 @ControllerAdvice 注解的使用
主要可以用于:
1.全局异常处理
2.全局数据绑定
3.全局数据预处理

全局异常处理
自定义一个全局处理异常的类
exceHandler

/*** @author ZSL* @ClassName MyAdviceHandler* @description* @date 2019/8/8*/
@ControllerAdvice
public class MyAdviceHandler {@ExceptionHandler(Exception.class)public ModelAndView exceHandler(Exception e){ModelAndView modelAndView = new ModelAndView();modelAndView.setViewName("myerror");modelAndView.addObject("error",e.getMessage());return modelAndView;}
}

可以定义多个不同的方法处理不同的异常,@ExceptionHandler(异常类型)可以用来指定该方法专门的处理异常的类型。如专门处理空指针的方法、专门处理数组越界的方法…
也可以这样,输出不同而已

@ExceptionHandler(Exception.class)public void exceHandler(Exception e, HttpServletResponse httpServletResponse) throws IOException {httpS