自定义拦截器执行时机,在<mvc:interceptors><mvc:interceptor></mvc:interceptor></mvc:interceptors>配好即可
publicclass HandlerInterceptorl implement HandlerInterceptor {
// preHande方法在进入Handler方法执行之前执行此方法--即在//HandlerAdapter执行目标方法之前执行
//应用场景:如身份认证,身份授权。
@Override
public boolean preHande(HttpServletRequestrequest,HttpServletResponse response,Object handler)thows exception{
return true;
}
// postHandle方法在进入Handler方法之后,返回ModelAndView
//之前执行--即在HandlerAdapter执行目标方法之后,在配置的视图解析//器ViewResoulver解析成真正物理视图之前执行
//如:(当然也可以就JSTL或EXCEL视图解析等等)
//<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
// <propertyname="prefix" value="/WEB-INF/views/"></property>
// <propertyname="suffix" value=".jsp"></property>
// </bean>
//应用场景从modelAndView出发,将公用模型数据(如菜单导航)在这里传到视 图,也可以在这里统一制定视图
@Override
public void postHandle(HttpServletRequestrequest,HttpServletResponse response,Object handler,ModelAndView modelAndView)thowsexception{
}
// afterCompletion方法在, View渲染视图之后,响应给浏览端之前//调用
//应用场景:统一日志处理,统一异常处理,
//释放资源等等
@Override
public void afterCompletion(HttpServletRequest request,HttpServletResponse
response,Object handler,Exception ex){
}
}