【学习】Spring3中的mvc:interceptors标签配置拦截器
mvc:interceptors
ThistagallowsyoutoregistercustomHandlerInterceptorsorWebRequestInterceptorsthatshouldbeappliedtoallHandlerMappingbeans.
YoucanalsorestricttheURLpathsspecifcinterceptorsapplyto.
注册自定义的拦截器或请求拦截器,也可以拦截指定url路径。
格式详解(以后台拦截器为例):
<mvc:interceptors> <mvc:interceptor> <mapping path="/admin/*"/><!--可略 以下配置将拦截特有的URL请求--> <bean class="org.example.AdminInterceptor"/><!--必填 自定义的拦截器的类--> </mvc:interceptor> </mvc:interceptors>
AdminInterceptor类为自定义的拦截器,可实现HandlerInterceptor接口,也可继承类HandlerInterceptorAdapter。
HandlerInterceptorAdapter类有三个方法,如下:
//预处理方法 可进行登记验证、安全、编编等处理 public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { return true; } //后处理(调用了Service并返回ModelAndView,但未进行页面渲染),依旧可以修改ModelAndView public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView)throws Exception { } //返回处理(已经渲染了页面),用于记录日志等 public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)throws Exception { }
---------------------------------
以下来自网络,供参考:
如果基于xml配置使用SpringMVC,
可以利用SimpleUrlHandlerMapping、BeanNameUrlHandlerMapping进行Url映射(相当于struts的path映射)和拦截请求(注入interceptors),
如果基于注解使用SpringMVC,可以使用DefaultAnnotationHandlerMapping注入interceptors。
注意无论基于xml还是基于注解,HandlerMappingbean都是需要在xml中配置的。
相关推荐
zhangdy0 2020-05-31
HappyHeng 2020-05-28
MicroBoy 2014-04-03
HappyHeng 2020-05-16
whbing 2020-04-11
MicroBoy 2020-01-23
横云断岭 2020-01-04
Julywhj 2019-12-14
方志朋 2019-12-08
方志朋 2019-12-03
neweastsun 2019-11-11
whbing 2019-10-21
ScarletLina 2016-05-03
JINKAI 2019-03-27
zhongjcbill 2019-03-27
lihaoxiang 2018-07-23