springMVC-拦截器
拦截器和过滤器
过滤器
Servlet提供给我们的filter拦截所有request的方法
拦截器
基于HandlerInterceptor接口
使用动态代理
对对象调用的方法进行拦截
使用步骤
1、配置MVC的xmlns和xsi
2、拦截器注册
使用mvc:interceptors标签
每一个拦截器配置一个mvc:interceptor标签(里面包含一个bean实体)
mvc:mapping:配置拦截的对象
mvc:exclude-mapping:用通配符拦截的对象中不需要拦截的对象
通配符:*只能匹配下一级,其下下级等还需要重新配置
**可匹配下一级和下下级
3、写入具体的拦截功能代码
1、 实现HandlerInterceptor接口
2、 preHandler():在业务处理前对request调用,如果还有其他拦截需求则返回true,如果没有则返回false
3、 postHandler():在业务处理后DispatcherServlet响应前对request调用
4、 afterCompletion():在DispatcherServlet完全处理完之后调用,可进行一些资源清理操作