一,首先介绍springMVC中的拦截器
Controller层的拦截器继承于HandlerInterceptorAdapter
Spring拦截器通过重写这三个方法实现Controller的拦截。
配置拦截器
二,springMVC中拦截器的执行顺序
我在mvc-servlet.xml中放入了两个拦截器
<!-- 拦截器 -->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**" />
<bean class="com.wendellup.web.base.annotation.method.security.SystemCommonInterceptor">
<property name="moreThanTime">
<value>500</value>
</property>
</bean>
</mvc:interceptor>
<mvc:interceptor>
<mvc:mapping path="/**" />
<bean
class="com.wendellup.web.base.annotation.method.business.AnnotationBusinessDescInterceptor">
</bean>
</mvc:interceptor>
</mvc:interceptors>
并在这两个拦截器中preHandle,postHandle,afterCompletion中和controller中添加测试语句
启动服务器访问tomcat后控制台的代码如下:
[INFO ] 2013-01-22 15:55:23 :SystemCommonInterceptor: preHandle
[INFO ] 2013-01-22 15:55:23 :AnnotationBusinessDescInterceptor: preHandle
[INFO ] 2013-01-22 15:55:23 :------------LoginController------------
[INFO ] 2013-01-22 15:55:23 :AnnotationBusinessDescInterceptor: postHandle
[INFO ] 2013-01-22 15:55:23 :SystemCommonInterceptor: postHandle
[INFO ] 2013-01-22 15:55:23 :AnnotationBusinessDescInterceptor: afterCompletion
[INFO ] 2013-01-22 15:55:23 :SystemCommonInterceptor: afterCompletion
三,springMVC中拦截器的应用
1.一次请求所花费的时间
2.某个controller需要登录才能访问
3.springMVC实现动态国际化
4.某个方法必须加自定义的注释
具体项目地址如下:
http://pan.baidu.com/share/link?shareid=273982&uk=3475027816