原文链接:https://blog.wanvale.com/archives/97/
概述
@ControllerAdvice
刚接触SpringMVC应该很少会见到这个注解,其实它的作用非常大。
这里来简单介绍一下,如果需要更详细的介绍,建议查询springmvc官方文档,里面的介绍非常详细。
@ControllerAdvice是SpringMVC从3.2开始提供的注解
org.springframework.web.bind.annotation.ControllerAdvice
用它标注的Class能被自动扫描到,主要是用来辅助Controller的
ControllerAdvice主要作用如下:
全局异常处理
定义一个类,用ControllerAdvice注解
// 全局异常处理
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)
public String myHandler(Model model,Exception e) {
model.addAttribute("message", e.getMessage());
return "errorPage";
}
}
在自定义的类中可以定义多个方法,不同方法处理不同异常,也可以用一个方法处理所有异常。
@ExceptionHandler注解用于指定要处理