@EnableWebMvc
已经注册了一个
RequestMappingHandlerMapping、一个RequestMappingHandlerAdapter、以及一个ExceptionHandlerExceptionResolver
以支持使用注解Controller的注解方法(如@RequestMapping、@ExceptionHandler)来处理request
@ControllerAdvice
将对于控制器的全局配置放置在同一个位置,注解了@ControllerAdvice的类的方法可以使用@ExceptionHandler,@InitBinder,@ModelAttribute注解到方法上,这对所有注解了@RequestMapping的控制器内的方法有效。
public class ControlAdvice{
@ModelAttribute --在所有执行方法之前进行初始化
public init(){
}
---统一异常处理
@ExceptionHandler({Exception.class})
@ResponseBody
public Result runTimeException(Exception exception){
}
--由@InitBinder表示的方法,可以对WebDataBinder对象进行初始化。WebDataBinder是DataBinder的子类,用于完成由表单到JavaBean属性的绑定。
@InitBinder
protected void initBinder(WebDataBinder binder){
}
}